MIP乘以x * y并除以z

时间:2017-09-26 10:50:33

标签: assembly mips

我正在进行在线教程,我对练习感到难过:

编写一个程序来确定以下表达式的值:

(X * Y)/ Z

我所坚持的是,在将数字乘以大于32位的数字后,我得到HI中的重要顺序位,其余位于LO中。我使用mfhi和mflo将值存储到2个寄存器中。但是在mfhi和mflo之后如何划分x * y的乘积?数字大于32位是我使用ori和sll获取正确数字的原因。

ori $t1, 0x186A
sll $t1, $t1, 8

ori $t2, 0x1388
sll $t2, $t2, 4

ori $t3, 0x61A8
sll $t3, $t3, 4

multu $t1, $t2
mfhi $t4
mflo $t5

由于

链接到教程练习#4:http://chortle.ccsu.edu/assemblytutorial/Chapter-14/ass14programs.html

0 个答案:

没有答案