一:数的表示形式
在生活中表示数的时候一般都是把正数前面加一个“+”,负数前面加一个“-”,但是在数字设备中,机器是不认识这些的,我们就把“+”用“0”表示,“-”用“1”表示。原码、反码和补码。这三种形式是怎样表示的呢?如下所示:
例1:求+12和-12八位原码、反码、补码形式
真值
原码
反码
补码
它们的原码分别为[+12]=00001100[-12]=100011
它们的反码分别为[+12]*=00001100
[-12]*=(28-1)+(-1100)=11110011
它们的补码分别为[+12]**=00001100
[-12]**=28+(-1100)=11110100
正数
+X
0X
0X
0X
负数
-X
1X
(2n-1)+X
2n+X
二:原码、反码及补码的算术运算
因为这三种数码表示法的形成规则不同,所以算术运算方法也不相同。
原码:与我们的日常中算术运算相同。
反码:先转换为反码形式,再进行加减运算。它的减法可以按A反+[-B]反的形式进行.
补码:先转换为补码形式,再进行加减运算,其减法可以按A补+[-B]补进行.
三:溢出及补码运算中溢出的判断
溢出可以描述为运算结果大于数字设备的表示范围。这种现象应当作故障处理。
判断溢出是根据最高位的进位来判断的。