二进制原码、反码、补码

原码

(负数的原码,直接把对应正数的最高位改为1)

原码能够直观的表示一个负数(能直观的把真值显示出来,如 -1为1000 0001其中最高位表示符号位,不进行算术计算)

反码

把原码除第一位按位取反,即1—>0、0—>1

补码

是为了让负数变成能够加的正数,所以,负数的补码=模-负数的绝对值。比如:-1 补码:1111 1111(0000 0001,也就是-1的绝对值,取反加1得来)

当一个数要减1的时候,可以直接加 1111 1111

反码和补码之间转换:补码= 反码+1


例如求-12的补码:

先求原码得:-12(10) = 10001100(2)

再按位取反求反码得:11110011

接着+1得补码:11110011+1=11110100

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值