原码反码补码

原码

原码表示法中,数值位用绝对值表示;符号位用“0”表示正号,用“1”表示负号。

例1: X = +0.1101,Y = -0.1101,则 [X]原 = 0.1101,[Y]原 = 1.1101;

例2: X = +1101,Y = -1101,则五位字长的 [X]原 = 01101,[Y]原 = 11101;八位字长的 [X]原 = 00001101,[Y]原 = 00011101

原码的特点

  • 最高位为符号位,正数为“0”,负数为“1”;数值位与真值一样,保持不变。
  • “0”的原码有两种不同的形式,以整数(8位)为例,[+0]原=00000000,[-0]原=10000000
  • 原码容易理解,与代数中正负数的表示接近。

 

反码

反码表示法中,符号位用“0”表示正号,用“1”表示负号;正数的反码数值位与真值的数值位相同,负数的反码数值位是将真值各位按位取反得到,即 将真值得“0”变成“1”,“1”变成“0”。

例1: X = +0.1101,Y = -0.1101,则 [X]反 = 0.1101,[Y]反 = 1.0010

例2: X = +1101,Y = -1101,则五位字长的 [X]反 = 01101,[Y]反 = 10010;;八位字长的 [X]反 = 00001101,[Y]反 = 11110010

0的反码也有两种不同的表示形式,以整数(8位)为例,[+0]反=00000000,[-0]反=11111111

 

补码

补码表示法中,符号位用“0”表示正号,用“1”表示负号;正数的补码数值位与真值的数值位相同,负数的补码数值位是将真值各位按位取反,再在最低位加 1 得到

例1: X = +0.1101,Y = -0.1101,则 [X]补 = 0.1101,[Y]补= 1.0011

例2: X = +1101,Y = -1101,则五位字长的 [X]补 = 01101,[Y]补 = 10011;;八位字长的 [X]反 = 00001101,[Y]反 = 11110011

0的补码与原码的补码不同,是唯一的,即[0]补 = 0。

 

原码 反码 补码
+0.1101 0.1101 0.1101 0.1101
-0.1101 1.1101 1.0010 1.0011
+1101 01101 01101 01101
-1101 11101 10010 10011

 

你可能感兴趣的:(原码反码补码)