黑马程序员技术交流社区
标题:
讨论 负数的 二进制 是怎么算出来的
[打印本页]
作者:
吃饭不吃醋
时间:
2014-10-20 16:12
标题:
讨论 负数的 二进制 是怎么算出来的
如题,百度了几篇文章,有一点点心得,但不确定是否正确,这里贴出来和大家讨论一下。
为了对比,这里先把正数的 二进制给放出来
正数
正数的原码 反码 补码相同
如
3 (0000 0011)
原码为:0000 0011
反码为:0000 0011
补码为:0000 0011
负数
负数的原码 补码 反码不同
反码是每一位取反即1变0,0变1;
补码是每一位取反后加1;
负数以补码表示
-3 (1111 1101)
原码为:0000 0011
反码为:1111 1100
补码为:1111 1101
2个疑问:
1. 负数的原码 指的是什么呢? 难道是 这个负数对应的正数的 原码?
2. 负数根据补码 获得二进制,比如上面的 -3 感觉是对应的0位置为-2的1次方 -2^1+(-1) 负数从-1开始
不知道上面2个理解是否正确,希望大家讨论讨论。
作者:
LeeWong
时间:
2014-10-20 16:27
-3的原码是 0000 0011? 还是1000 0011
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2