十六位机器码的原码反码补码怎么算比如:用十六位机器

如题所述

举例说明如下:
真值 x = -133d = -1000 0101b , b是二进制数后缀, d是十进制数后缀,
[-x]原 =1000 0000 1000 0101b,
以上原码最高位是符号位, 1表示负数 , 符号位与数值位之间的空位补0,补齐16位
[-x]反 =1111 1111 0111 1010b , 将原码除符号位之外的数值位取反得反码
[-x]补 =1111 1111 0111 1011b ,将反码末位加1得补码
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-16
十六位机器码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就是真值

相关了解……

你可能感兴趣的内容

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