我现在正在做家庭作业,我得到了以下信息:
$s6是数组A的基地址的位置,$s0是f的值的位置(未指定)。
它希望我将一些指令转换为 C 语句。这是我的问题,因为如果回答了这个问题,我可以很容易地解决这个问题的其余部分:
添加 $t0, $s6, $s0
这是在说$t0 = (the base address of array A) + f
还是在说$t0 = A[0+f]
?
因为如果 A 的基地址是 0x04000000 并且我使用 addi 将 4 添加到该基地址,产生 0x04000004,并将该值分配给 t0,我的意思是 t0 = A[1](假设我正在存储整数)。
但由于我不知道 f 的值,我不确定如何在 C 中表示它,因为我知道我正在修改索引,但我不知道修改了多少。是否更准确地说(根据上面的说明):
$t0 = A[f/4]
我对这一切都很陌生哈。希望我证明我已经做了一些研究来试图解决这个问题。
谢谢
OSFTW