私は趣味で MIPS を学んでおり、QtSPIM シミュレーターを使用しています。これは私にとって初めてのプログラムです
本からの私の質問:
- 100 ワードをメモリ内の場所から
'SRC'
メモリ内の別の場所にコピーするプログラムを作成'DEST'
します。
ところで、ループを 100 回実行するのは間違っているかもしれません。その部分はまだ計算していません。
私のプログラムがビットをコピーsrc
して des に配置するかどうかを知りたいだけです。
それは少なくともこれを達成しますか?
完全な解決策を明らかにしないでください。ヒントなどを教えてください。
これが私の試みです(初めてのプログラミングです!):
.data
src: .space 400
dest: .space 400
.text
main:
la $t6, src # t6 = pointer for src
la $t7, dest # t7 = pointer for dest
li $t0, 100 # t0 = initialise countdown
loop:
lw $t1, ($t6) # load 32 bits from src
sw $t2, ($t7) # store bits from src to dest
addi $t6, $t6, 4 # add 4 to pointer to get next 32 bits of src
addi $t7, $t7, 4 # add 4 to pointer to get next 32 bits of dest
addi $t0, $t0, -1 # countdown minus 1
bgt $t0, $zero, loop # loop if countdown > 0
jr $ra # end