十六位机器码的原码反码补码怎么算

比如:用十六位机器码1110001010000000来表示定点整数(最高位为符号位),当它是原码时表示的十进制真值为 多少?。当它是补码时表示的十进制真值是 多少? ;当它是反码时表示的十进制真值是多少?。怎么算

十六位机器码1110,0010,1000,0000
不管它是什么码,首先都要先将它转化为原码再做计算!

当它是原码时就直接转化为十进制的! (注释2ˇ3=8)
=-(2ˇ7)+(2ˇ9)+(2ˇ13)+(2ˇ14)=-25216
-25216就是真值 !

当它是补码时:先将它转化为原码,方法就是补码的补码就等于原码!
补码:1110,0010,1000,0000
原码:1001,1101,1000,0000
=-(2ˇ7)+(2ˇ8)+(2ˇ10)+(2ˇ11)+(2ˇ12)=-7552
-7552就是真值

当它是反码时:
反码:1110,0010,1000,0000
原码:1001,1101,0111,1111
=-1+2+4+8+16+32+64+256+1024+2048+4096=-7551
-7551就是真值
温馨提示:答案为网友推荐,仅供参考
第1个回答  2022-01-29
十六位机器码:1110 0010 1000 0000。

-----------------------
如果这是原码,真值就是-110 0010 1000 0000。
       它表示十进制数:-25216。
-----------------------
如果这是反码,再取反(符号不变),就是原码。
十六位机器码:1110 0010 1000 0000。

 取反得原码:1001 1101 0111 1111。
  真值,即 : -001 1101 0111 1111。
表示十进制数:-7551。
-----------------------
如果这是补码,减一取反(符号不变),就是原码。
十六位机器码:1110 0010 1000 0000。

 减一得反码:1110 0010 0111 1111。
 取反得原码:1001 1101 1000 0000。
  真值,即 : -001 1101 1000 0000。
表示十进制数:-7552。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网