A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fengcommon 中级黑马   /  2015-11-22 23:58  /  1759 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

求教原码、反码、补码问题?求详细的解答?

11 个回复

倒序浏览
正数的三码一致,负数的原码,除了符号位不变其余按位取反就是反码,反码+1就是补码
回复 使用道具 举报
大学没好好学
回复 使用道具 举报
倒是会照着写
回复 使用道具 举报
    源码:
       一个数绝对值的二进制表示,如果是+  最高位(最左侧的位)改0
                             如果是-  最高位(最左侧的位)改1
    反码:
      正:正数的反码等于源码
      负:除符号位不变,其他位逐位取反(1-->0,0--->1)
    补码:
      正:正数的补码等于源码
      负:1)反码+1
         2)在源码基础上符号位不变,其他各位取反,最后在+1
//64位机器下
// int 类型占用 4个字节,每个字节为8
//  计算机储存1使用32位的二进制数码,储存的是补码

     +1  源码:00000000000000000000000000000001
         反码 == 源码 == 补码
     -1  源码  10000000000000000000000000000001
         反码  11111111111111111111111111111110
         补码  11111111111111111111111111111111
回复 使用道具 举报 1 0
源码就是绝对值的二进制数码+最高位取符号位
反码各位取反
补码=反码+1

正数三码合一,原码反码补码全都相同
负数三码都不同
参与计算,用的是补码
回复 使用道具 举报
w苗子007 发表于 2015-11-24 00:29
源码:
       一个数绝对值的二进制表示,如果是+  最高位(最左侧的位)改0
                       ...

给力,谢了
回复 使用道具 举报
liury 中级黑马 2015-11-25 13:15:01
8#
相同的一串01序列,解释方式不同而已
回复 使用道具 举报
chensc 金牌黑马 2015-11-25 21:31:42
9#
学习学习!
回复 使用道具 举报
二楼
回复 使用道具 举报
平时要学会百度,这样才能更好的自学,百度一下什么都有
回复 使用道具 举报
计算机储存数据是以补码储存.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马