您的位置:首页 > 其它

原码 反码 补码 移码的关系(精简总结)

2013-10-30 00:53 429 查看
依然是为了避开那些繁琐复杂晦涩的概念与术语,为了确保能清晰的梳理它们之间的关系,现分为两部分说明

1. 机器数 是 正数 符号位为0

原码 = 反码 = 补码

eg:机器码长度为8,求X(6)10原码 反码 补码 移码

[X]原 = 00000000+110=00000110

[X]补=[X]反=[X]原 =00000110

[X]移=10000110

(绿色为符号位)

2.机器数 是 负数 符号位为1

反码 = 原码(符号位除外)各位取反而得到

补码 = 原码(除符号位外)各位取反,并在未位加1而得到

eg:机器码长度为8,求X(-6)10原码 反码 补码 移码

[X]原 = 10000000+110=10000110

[X]补=11111001 +1=11111010

[X]反=11111001

[X]移=01111010

(绿色为符号位)

=============================

移码 = 补码的符号位直接取反

=============================

应用示例

已知补码 求原码

原码 = 补码取反加1 (符号位除外)

[X]补=1101001 求[X]原。

[X]原 = 1010110+1 =1010111

总结:在换算过程中符号位始终保持不变(移码除外)。依然高端大气上档次!

如果有错误敬请指出,反正我也不一定改!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: