正数的原码、反码、补码都是其本身
负数的反码是原码的绝对值按位取反,就是符号位不变,其他位取反。补码是反码的末尾加1。
小二儿!上道题!
一个数的原码是2X , 补码是90H ,求X是多少
解:
1.先把16进制的 90H 换成2进制 , 10010000 ,因为第一位是1 ,所以可以确定这个数是个负数
2.把 10010000 - 1 得到反码 10001111 ,这里要注意这是二进制加减法运算
0+0=0,0+1=1,1+0=1,1+1=10
0-0=0,1-0=1,1-1=0,0-1=-1
3.把反码取反 得到 01110000 ,换成十进制就是112 ,因为是负数,加上负号 , -112
4.2X=-112 , X=-56
我认为二进制加减运算是非常需要注意的地方。
你会了吧!