我正在尝试将MIPS中2的补码中的数字转换成符号幅度。要做到这一点,我想我会:
例如,11111111111111111111111111111001
(0xfffffff9
)将成为00000000000000000000000000000111
(0x00000007
)。
我想出了如何做第1步& 2,但无法弄清楚第3步。有谁知道我会怎么做?
此外,还有更好的方法可以将2 +的补码转换为MIPS中的符号幅度格式吗?
答案 0 :(得分:1)
如果您使用0x80000000
对值进行异或,则最高位将会翻转。您可以通过XOR&0x7fffffff
完成最后两个步骤(保留最重要的位并翻转其他位)。