原码 反码 补码

本文介绍了有符号整数的三种二进制表示方法:原码、反码和补码,强调了符号位的作用以及计算机使用补码进行运算和存储的事实。特别指出,无符号整数的补码和原码相同。
摘要由CSDN通过智能技术生成
  • 关于整数的2进制表示方法一共有3种 即:原码 反码 补码。但是其中对于有符号的整数,其三种的表示方法都包含了:符号位  数值位

  • 符号位 位于二进制数的最高的一位,1表示负,0表示正,其余都是数值位。

那么对于有符号的整数我们如何写出三个形式呢?

e.g. int a=-12

//原码:直接按照正负数的形式翻译成二进制即可
//(由于int的4个字节 且一个字节的8个比特位 故而一共32个数字)
原码:10000000 00000000 00000000 00001100
//是负数最高一位为1表示”负“

//反码:符号位不变,其余的由1-->0 ,0-->1
反码:11111111 11111111 11111111 11110011

//补码:反码+1即可得到补码
补码:11111111 11111111 11111111 11110100

注意!对于无符号的整数来说它的 补码 反码 是与其原码一模一样的

值得一提的是:对于计算机来说,不论是整数数据的存放还是运算,计算机都是以补码的形式进行计算或存放的

总结:原码取反--->反码,反码+1--->补码

           补码 先取反 再+1(或者先-1 再取反)得到原码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值