如何转换2-complement到10? MIPS

时间:2013-01-27 03:02:20

标签: mips

我知道如何手动将两个补码转换为基数10。

http://sandbox.mc.edu/~bennet/cs110/tc/tctod.html

如链接所示。您可以通过第一位判断数字是负数还是正数,所以我的想法是因为数字是8位,我将二进制或十六进制0x00000080除以1000 0000。

有没有人有更好的解决方案,因为现在这对我不起作用,我的代码位于底部。寄存器1是二进制补码的位置。

lis $ 8 .word 0x00000080

div $ 1,$ 8

mflo $ 9

31美元

1 个答案:

答案 0 :(得分:0)

首先你可以创建Not of the变量,MIPS没有内置但是你可以使用Xor来获取它(使用addi将寄存器的值设置为-1并在寄存器上使用xor被否定和其中的-1的寄存器,它存储所有的1)

之后,只需添加1即可。