【整数的二进制表示】原码,反码,补码

整数在内存中以补码形式存储,正数的原码、反码和补码相同。负数的原码是其二进制表示,反码是除符号位外其他位取反,补码则是反码加1。例如,-3的二进制原码为10000000000000000000000000000011,反码为11111111111111111111111111111100,补码为11111111111111111111111111111101。
摘要由CSDN通过智能技术生成

众所周知,整数在内存中存储的是 补码

在涉及到对二进制位进行操作的程序时,清楚“三码”的关系和转换方式是非常重要的。

整数的二进制表示可以分为三种:原码 | 反码 | 补码

其中正整数的三码均相同,负数的三码则需要自己计算

  1. 原码

把一个整数按照正负直接翻译成二进制就是原码

例:3 的二进制原码表示为 “00000000 00000000 00000000 00000011”

-5 的二进制原码表示为 “10000000 00000000 00000000 00000011”

  1. 反码

原码符号位不变,其他位按位取反就是反码

例:-3 的二进制反码表示为 “11111111 11111111 11111111 11111100”

  1. 补码

反码+1

例: -3 的二进制补码表示为 “11111111 11111111 11111111 11111101”

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值