整型以什么方式在内存中被存储是今天的中心话题。
想要了解整型存储的细节,首先要了解一些人为创造的基本概念。
原码、反码、补码
这是整数在计算机中的三种表示方法,呈现形式是二进制。
如下是0的二进制表示形式。
这三种码的相同点:都是32位,最左侧的一位为符号位,正数符号位为0,负数符号位为1.(0具有特殊性,符号位为0)。其余的31位为数值位。
直接将数值按照正负数的形式翻译成二进制就可以得到原码。
这三种码的不同点:正数的反码、补码和原码的形式一模一样。(0也是)
而负数的反码和补码是相较于原码是有变化的。
负数的反码:将原码的符号位不变,其他位依次按位取反就可以得到反码。
负数的补码:反码