![]() |
1
0
你能解释一下你想在这里做什么吗
?
这两条指示放在一起没有意义。第二次擦除/重置
根据无符号数的定义,由于无符号数都不小于零,因此使用的无符号比较小于的值与0的立即数总是会产生false。换句话说,负数对于无符号数字来说是不可能的。 如果您想知道数字是否为负数,请使用 签名的 而是进行比较。 仅供参考,你也可以使用移位来提取或复制符号位,所以通过使用算术移位31,得到-1或0,通过使用逻辑移位31,获得1或0。 从根本上讲,你处理的是有符号整数,所以所有的比较操作都应该有符号,除非你真的知道一些不同的东西。 然而 你说得对 需要进行无符号加法和/或减法 以避免处理器的自动签名溢出检测 ,因为如果你点击它,它将终止你的程序。当没有溢出时,无符号加法将产生与有符号加法相同的数字、相同的数值、相同的位模式,因此,这是有效的。如果有溢出,你可以在想的时候检测到,例如在添加之后。 但是,为了有意义,需要使用有符号算术进行比较,而且,这些有符号比较(与有符号加法/减法不同)不会有碰到处理器溢出陷阱的风险。 |
![]() |
ninomi · 在MIPS中使用不同的寄存器 7 年前 |
![]() |
ninomi · MIPS中的数据节和文本节 7 年前 |
![]() |
Coder117 · 管道中的MIPS lw延迟 7 年前 |
![]() |
NYG · 帧指针的优点是什么? 7 年前 |
![]() |
John Källén · MIPS寄存器$0能否用于存储和检索值? 7 年前 |