【发布时间】:2014-07-07 18:22:58
【问题描述】:
将以下 C 代码转换为 MIPS 程序集的最佳解决方案是什么?
x = A[i];
请注意x ⇨ $t0、A[] ⇨ $s0、i ⇨ $s1。
与add:
sll $t0, $s1, 2
add $t0, $t0, $s0
或addu:
sll $t0, $s1, 2
addu $t0, $t0, $s0
我知道add 和addu 之间的difference,但我不明白何时使用其中一个。
【问题讨论】:
-
如果您了解区别,那么您应该了解何时使用它们。是否要在溢出时设置陷阱?
-
我不知道。如果我想要一个陷阱,我必须根据什么选择?
-
如果需要询问是否需要溢出陷阱,则不需要溢出陷阱。
标签: assembly add mips memory-address