首页 > 代码库 > 原码,反码和补码
原码,反码和补码
对于有符号而言
1. 二进制的最高位是符号位:0表示整数,1表示负数
2. 正数的源码,反码和补码都是一样的
3. 负数的反码=它的源码符号位不变,其他位取反
4. 负数的补码=它的反码+1
5. 0的反码,补码都是0
6. 在计算机运算的时候,都是以补码的方式来运算
例如:1+(-2)在计算机里是这样运行的
-2的源码:1000 0010-2的反码:1111 1101-2的补码:1111 1101 + 0000 0001 = 1111 11101 + (-2) = 0000 0001 + 1111 1110 = 1111 1111将计算结果还原到反码的形式(反码 = 补码 - 1)1111 1111 - 0000 0001 = 1111 1110将符号位还原到反码形式(源码 = 符号位不变,反码取反)1000 0001 = -1
说明:在计算机里只有加法运算,(1 - 2 = -1)也是通过(1 + (-2) = -1)加法实现的
原码,反码和补码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。