2025年2月28日
Linux C 编程教程第 15 部分 - 2s 补数和负数
在此页 2s补码 负数 结论 到目前为止,在这个正在进行的 C 编程教程系列中,我们已经讨论了很多概念,但遗漏了一个基本概念。它是关于负数的。是的,虽然我们在我们的一个初始教程中简要提到了有符号变量和无符号变量,但我们实际上并没有讨论负数是如何存储在内存中的。好吧,这正是本教程将要讨论的内容。因此,废话不多说,让我们开始讨论。2s补码在我们开始解释内存中的负数表示之前,重要的是我们知道 1 和 2 补码的概念,它们都是二进制级别的操作。让我们举一个非常简单的例子。假设你有一个 4 字节整数 a,十进制值为 15。那么它在二进制形式内存中的表示方式如下:00000000 00000000 00000000 00001111现在,要计算补码,只需反转所有位即可。所以下面是 15 的 1s 补码表示:111111…