我正在进行在线教程,我对练习感到难过:
编写一个程序来确定以下表达式的值:
(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