我正在努力了解这个mips指令块的功能。在这些说明之后,我想找出寄存器$ t0的内容。
ori $t0 $zero 0xA5C11000
addi $t1 $zero 0x10010000
sw $t0 ($t1)
lb $t0 1($t1)
sh $t0 2($t1)
lw $t0 ($t1)
我知道寄存器$ t0和$ t1中有A5C11000和10010000。然后,sw命令将$ t1存储在$ t0的位置。 Lb然后将$ t1偏移1,并将其存储在位置10010001?我不知道之后会发生什么。
答案 0 :(得分:0)
不太正确:sw
将$t0
的内容存储在$t1
中的地址,即10010000
上。 lb
将地址$t1 + 1
中的一个字节加载到$t0
中。 sh
在地址$t0
中存储一个半字($t1 +2
的低2个字节)。
尝试逐步调试器中的代码以查看其作用。