在MIPS中比较0x00000000和0xFFFFFFFF

时间:2011-06-03 07:35:31

标签: assembly mips

我正在尝试使用MIPS汇编程序和xspim对32位数字列表进行排序。我一直在踩着我的代码看看失败了,并注意到当比较0x00000000和0xFFFFFFFF时,它并没有比较这些数字。在程序失败的时候,$ t3得到0x00000000,$ t4得到0xFFFFFFFF,看起来像这样:

bge $t3,$t4,lol #So如果t3大于或等于我应该向前跳,否则继续。现在的问题是,即使t3较小,程序也会跳转。

1 个答案:

答案 0 :(得分:4)

这是因为0xffffffff被解释为-1,即在2补码中。

有一些具体的说明来处理数字,就好像它们是未签名的一样。使用这些说明。 (比较实例bgtbgtu u代表无符号。)