原码、补码和反码

数的表示{

原码:
反码:(正数不变;负数按位取反,符号位不变。)
补码:(正数不变;负数:反码+1)
}
如果字长为8位,从0~7。从右到左数,最高位(第七位)是符号位。
0为正,1为负。
最大:0111111 (2的7次幂减一)
最小:1000000 (负的2的7次幂)

例子1 17的原码、补码和反码

17用二进制表示:10001;一共八位补上为:00010001(原码)
补码和反码均为00010001

例子二 写出负17的原码、补码和反码。
最高位为1;17的二进制表示10001,所以原码为10010001

反码(按位取反):11101110

补码(反码加一):11101111

计算机中,数用补码来存。

补码的好处:
1) 1和0,表示唯一;
2) 可以把减法表示为加法。例如:(x-y)补码=x补码+y补码
3) 使数的表示范围多1.
注:强制规定,补码10000000对应的数字是-128,字长为8时最小的数

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值