|
1
0
你能解释一下你想在这里做什么吗
?
这两条指示放在一起没有意义。第二次擦除/重置
根据无符号数的定义,由于无符号数都不小于零,因此使用的无符号比较小于的值与0的立即数总是会产生false。换句话说,负数对于无符号数字来说是不可能的。 如果您想知道数字是否为负数,请使用 签名的 而是进行比较。 仅供参考,你也可以使用移位来提取或复制符号位,所以通过使用算术移位31,得到-1或0,通过使用逻辑移位31,获得1或0。 从根本上讲,你处理的是有符号整数,所以所有的比较操作都应该有符号,除非你真的知道一些不同的东西。 然而 你说得对 需要进行无符号加法和/或减法 以避免处理器的自动签名溢出检测 ,因为如果你点击它,它将终止你的程序。当没有溢出时,无符号加法将产生与有符号加法相同的数字、相同的数值、相同的位模式,因此,这是有效的。如果有溢出,你可以在想的时候检测到,例如在添加之后。 但是,为了有意义,需要使用有符号算术进行比较,而且,这些有符号比较(与有符号加法/减法不同)不会有碰到处理器溢出陷阱的风险。 |
|
|
Mehmet Aslan · freertos堆栈不会溢出 1 年前 |
|
DCR · 防止用预标记包围的长行溢出 2 年前 |
|
|
TJream · MIPS中使用addu检测溢出 2 年前 |
|
|
Mkhomiak2 · DateAdd语句中的Int和Data 3 年前 |
|
|
Mr. Lavalamp · 带有图像的CSS溢出容器不工作? 13 年前 |
|
|
John Bernal · JQuery花式框文本溢出 14 年前 |