计算机中的数值信息分成整数和实数两大类。整数不使用小数点,或者说小数点总是隐含在个位数的右边,所以整数也称为“定点数”,包含原码、反码、补码和移码。相应地,实数也称为“浮点数”。
正数 负数 原码 最高位为符号位0,其他位为真值的二进制。 最高位为符号位1,其他位为真值的二进制。 反码 等于原码。 按原码除符号位外,其他位取反。 补码 等于原码。 等于反码+1 或者 求(2机器字长-负数的绝对值)的原码。 移码 补码的符号位取反。 补码的符号位取反。
1. 原码
最高位是符号位,0表示正号,1表示负号,其余的n-1位表示数值的绝对值(真值)。
数值 | +0 | -0 |
---|---|---|
原码(按8位二进制示例) | 0 0000000 | 1 0000000 |
数值 | +2 | -2 |
原码(按4位二进制示例) | 0 010 | 1 010 |
原码运算——加法
运算 | 数值 | 原码 | 原码转十进制 |
---|---|---|---|
1 | 00000001 | 1 | |
+ | 2 | 00000010 | 2 |
= | 3 | 00000011< |