数据表示——原码/反码/补码/移码/浮点数

计算机中的数值信息分成整数和实数两大类。整数不使用小数点,或者说小数点总是隐含在个位数的右边,所以整数也称为“定点数”,包含原码、反码、补码移码。相应地,实数也称为“浮点数”。

正数 负数
原码 最高位为符号位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 3

原码运算——减法

你可能感兴趣的:(数据表示——原码/反码/补码/移码/浮点数)