设机器数为8位.已知Y=-0110110,请分别写出Y的原码,补码,反码.

问题描述:

设机器数为8位.已知Y=-0110110,请分别写出Y的原码,补码,反码.

真值:-0110110
原码:10110110
反码:11001001
补码:11001010
首先,真值的正负号,其原码,补码,反码的表示方法都是一样:其最高位(我们叫做符号位)为0表示正,1表示负.
正数的原码,补码,反码都是一样.
负数比较特殊,下面介绍负数的原码,补码,反码的变换:
通过原码求反码的方法:符号位不变,其余各位分别取反.
通过原码求补码的方法:先求原码的反码,然后对反码加1.(注意,机器的补码操作会出现溢出最高位的情况!)
通过补码求原码:对补码减1,所得结果符号位不变,其余各位取反.(即原码求补码的逆过程)