Assembly 将0x00000000与MIPS中的0xFFFFFF进行比较

Assembly 将0x00000000与MIPS中的0xFFFFFF进行比较,assembly,mips,Assembly,Mips,我正在尝试使用MIPS汇编程序和。我一直在仔细研究我的代码,看看有什么失败了,并注意到当比较0x00000000和0xFFFFFF时,它并没有像应该的那样比较这些数字。在程序失败时,我在$t3中得到0x00000000,在$t4中得到0xFFFFFF,如下所示: bge$t3,$t4,lol#因此如果t3大于或等于,我应该向前跳,否则继续。现在的问题是,即使t3更小,程序也会跳转。这是因为0xffffffff被解释为-1,即2-补码 这里有一些特殊的指令来处理数字,就像它们是未签名的一样。使用这

我正在尝试使用MIPS汇编程序和。我一直在仔细研究我的代码,看看有什么失败了,并注意到当比较0x00000000和0xFFFFFF时,它并没有像应该的那样比较这些数字。在程序失败时,我在$t3中得到0x00000000,在$t4中得到0xFFFFFF,如下所示:


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

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


这里有一些特殊的指令来处理数字,就像它们是未签名的一样。使用这些说明。(例如比较
bgt
bgtu
其中
u
代表无符号。)

也许它将0xFFFFFF解释为-1(2-补码)?我跳过了排序代码,只打印了数字,其中一些数字是负数。我怎样才能避开它?