整数补码求法

正数的补码

正整数的补码与 原码相同。
【例1】+9的补码是00001001。(备注:这个+9的补码是用8位2 进制来表示的,补码表示方式很多,还有16位二进制补码表示形式,以及32位二         进制补码表示形式,64位进制补码表示形式等。每一种补码表示形式都只能表示有限的数字。)

负数的补码

求负整数的补码,符号位不变,数值位各位取反,最后整个数加1。
同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二 进制中是11110001,然而在16位二进制补码表示中,就是                 1111111111110001。以下都使用8位2 进制来表示。
【例2】求-5的补码。
因为给定数是负数,则符号位为“1”。
后七位:-5的原码(10000101)→符号位不变(10000101)→数值位取反(11111010)→加1(11111011)
所以-5的补码是11111011。
【例3】数0的补码表示是 唯一的。
[+0]补=[+0]反=[+0]原=00000000
[ -0]补=11111111+1=00000000

补码转化为原码

已知一个数的补码,求原码的操作其实就是对该补码再求补码:
⑴如果补码的符号位为“0”,表示是一个正数,其原码就是补码。
⑵如果补码的符号位为“1”,表示是一个负数,那么求给定的这个补码的补码就是要求的原码。
【例4】已知一个补码为11111001,则原码是10000111(-7)。
因为符号位为“1”,表示是一个负数,所以该位不变,仍为“1”。
其余七位1111001取反后为0000110;
再加1,所以是10000111。
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值