【问题标题】:Why more numbers are less than 0 in 2's compliment为什么更多的数字在 2 的补码中小于 0
【发布时间】:2019-07-27 14:07:56
【问题描述】:

在我的学习指南中,我的教授提到对于 2 的恭维,

【问题讨论】:

  • 不知道。对于 8 位字符:-128 到 -1 具有与 0 到 127 相同数量的整数。我想你的教授可能已经忘记了 0 在他的比较公式中的位置。
  • 事实是:最小数字的绝对值大于最大数字的绝对值。 ( abs(-128) > abs(127) )。 (因为 0 将正数减一)也许这就是他的意思

标签: assembly binary bit-manipulation


【解决方案1】:

要么你的教授错了,要么你误解了他们的意思。 < 0 的可表示数字与 ≥ 0 的数量相同。

每个以1 开头的字符串都表示二进制补码中的一个不同的负整数。每一个以0开头的二进制字符串除了全0字符串代表一个不同的正整数。因此可以表示的负整数比正整数多一个;也许这就是你教授的意思。

所有0字符串代表数字0

【讨论】:

  • 是的,这一定是一个错字。当你必须改变它的符号来做到这一点时,我非常困惑为什么在 2 的恭维中会有更多的负数。非常感谢您重申我的想法!
猜你喜欢
  • 2019-03-06
  • 1970-01-01
  • 2010-11-06
  • 2018-09-30
  • 2012-06-18
  • 2020-10-20
相关资源
最近更新 更多