我正在攻读计算机体系结构的大学课程,所以我不熟悉汇编语言。我的问题是,如何在不使用伪指令的情况下将以下代码从C转换为MIPS汇编语言?
B [8] = A [i-j]
i和j分配给寄存器$ s3和$ s4,A和B的基地址在寄存器$ s6和$ s7中。到目前为止,我有:
sub $t0, $s3, $s4
sll $t0, $t0, 2
lw $t1, $t0($s6) #Is this line allright?
add $s5, $t1, $zero
sw $s5, 32($s7)
我不确定使用寄存器$ t0作为第三行地址存储器的偏移量。提前谢谢。
答案 0 :(得分:9)
没有。而是通过将$ t0添加到$ s6来计算所需的地址。
sub $t0, $s3, $s4
sll $t0, $t0, 2
add $t0, $t0, $s6
lw $t1, 0($t0)
sw $t1, 32($s7)