c语言 - 正整数如何存储在计算机内存中?他们的 2 补码存储为内存中的负整数还是它们的二进制等价物?



对于负整数,其2的补码存储在内存中。我对正整数感到困惑。它们直接以二进制格式存储,或者也以2的补码存储。请注明已签名和未签名。

Two的补码在计算中用作有符号二进制表示的形式。

为了这个目的保存了一位。所以一个正数和一个负数在内存中的存储方式完全相同,只是一位表示它是正数还是负数。

内存中的正127:127 -> 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1

内存中的负极127:-127 -> 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1

正如您所看到的,如果MSB(最高有效字节(包含1,则意味着它是负的,所有字节都反转,并且整数递增一。

相关内容

  • 没有找到相关文章

最新更新