原码、补码和反码 (1)原码表示法 原码表示法是机器数的一种简单的表示法
其符号位用 0 表示正号,用:表示负号,数值一般用二进制形式表示
设有一数为 x ,则原码表示可记作〔x 〕原
例如,X1= +1010110 X2= 一 1001010 其原码记作: 〔X1〕原=[+1010110]原=01010110 〔X2〕原=[-1001010]原=11001010 原码表示数的范围与二进制位数有关
当用 8 位二进制来表示小数原码时,其表示范围: 最大值为 0
1111111,其真值约为(0
99)10 最小值为 1
1111111,其真值约为(一 0
99)10 当用 8 位二进制来表示整数原码时,其表示范围: 最大值为 01111111,其真值为(127)10 最小值为 11111111,其真值为(-127)10 在原码表示法中,对 0 有两种表示形式: 〔+0〕原=00000000 [-0] 原=10000000 (2)补码表示法 机器数的补码可由原码得到
如果机器数是正数,则该机器数的补码与原码一样;如果机器数是负数,则该机器数的补码是对它的原码(除符号位外)各位取反,并在未位加 1 而得到的
设有一数 X,则 X 的补码表示记作〔X〕补
例如,[X1]=+1010110 [X2]= 一1001010 [X1]原=01010110 [X1]补=01010110 即 [X1]原=[X1]补=01010110 [X2] 原= 11001010 [X2] 补=10110101+1=10110110 补码表示数的范围与二进制位数有关
当采用 8 位二进制表示时,小数补码的表示范围: 最大为 0
1111111,其真值为(0
99)10 最小为 1
0000000,其真值为(一1)10 采用 8 位二进制表示时,整数补码的表示范围: 最大为 01111111,其真值为(1