乘法结果存储在两个不同的寄存器中,单位为mips高和低。MIPS与溢出相乘,然后减法
例如:在本例中,为了方便起见,我将高位和低位设置为4位寄存器。
li $t0,12
mult $t0,$t0
12 * 12 = 144
1100 * 1100 = 1001 0000
所以具有高1001和低0000具有现在如果我想从结果中减去12。我怎么做?
我不能使用
mflo $t1
subi $t2,$t1,12
,因为低了所有的零和结果将是wrong.How做我在这个case.when执行减法两个数字是32个整数和乘法会导致overflow.say东西如 2^30 * 2^4 - 14 使用高寄存器。
为什么错了? 144 - 12 = 132或1000 0100二进制 –