MIPS中的除法伪指令是什么?就像有一个伪乘法指令是MIPS“mul”,它使生活更容易一些。我正在使用QT Spim。
此致
答案 0 :(得分:5)
要执行整数除法,您可以使用div $t1, $t2, $t3
将$t1
设置为$t2/$t3
的整数除法,或将div $t1, $t2, imm
设置为即时即时。
同样,要计算整数除法的余数,您可以使用rem $t1, $t2, $t3
或rem $t1, $t2, imm
这些伪指令基本上会执行div $t1, $t2
,将结果存储在LO
和HI
特殊寄存器中(对于商和余数),然后通过以下方式将这些值移动到目标寄存器中mfhi
和mflo
。
要执行浮点除法,您需要使用浮点寄存器$ f0到$ f31。
一旦将浮点数存储在其中一些寄存器中(正确编码为浮点数,例如$f1
和$f2
),就会发出div.s $f0, $f1, $f2
指令进入{{1 } $f0
的结果。
现在,为了获得余数,您可以通过截断结果来减去除法的结果。
例如:
$f1/$f2