原码反码补码的区别

基本概念:
1.正数的原码、反码、补码都相同;
2.负数的原码:最高位为1,其余位为真值的绝对值;
3.负数的反码:在原码的基础上,符号位不变,其余位按位取反;
4.负数的补码:在原码的基础上,符号位不变,其余位取反,最后加1;也就是在反码的基础上加1。
负数的补码向源码转换步骤

  1. -12的补码:1111 0100
  2. 最高位不变,其余位取反:1000 1011
  3. 加一得到原码:1000 1100

题目:由3 个“1”和 5 个“0”组成的 8 位二进制补码,能表示的最小整数
思路分析:

  1. 求最小的值,那么肯定是负数最小,最高位为1表示为负数
  2. 剩下的5个0和2个1要组成一个补码,只有1000 0011这种补码形式转换成原码后值最大 操作步骤
  3. 最高位不变,其余位去反 1111 1100
    2.加1 1111 1101 计算后得到-(64+32+16+8+4+1)=-125

简单记
正数:原码=反码=补码

负数:反码=原码取反(符号位除外),补码=反码+1

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值