原码、补码和反码


我真的会醉,每次考试复习科目的时候都会多少涉及一点原码和补码的知识,每次就那么点玩意儿,每次都记不住,都得重新复习,今天我就整理一个,我以后不会的话就回来翻这个,势必要给他搞会!

一、基础概念

1、原码概念

数字用二进制表示,前第一位是符号位,0是正,1是负的。
例子:-7是4+2+1,所以原码是1111
(超过7的话就应该是八位了)

2、补码概念

原码的计算码
计算的时候用用补码,看大小用原码

3、反码

二、原码转换为补码

正数,原码和补码相同
负数原码转补码,符号位不变,其余位按位取反,然后整体加1
例子:-7原码是1111,要换成补码就是先符号位1不变,其余位取反得到1000,再加1,得到补码:1001

三、补码转换为原码

符号位为0,则是正数,补码就是原码;
符号位为1,则是负数,先减1,再符号位不变剩下位取反,或者先符号位不变按位取反再整体加1
例子:-7,补码1001,先减1就是1000,符号位不变取反就是1111
或者按照第二个方法,符号位不变,取反,就是1110,再加一就是1111
两个方法都OK的。

四、原码转为反码

正数的反码与原码一致;
负数的反码是最高位(符号位)不变,剩下的按位取反。
(和补码比没有加1的动作)
那怎么往回返也是很像补码的,我就不多赘述了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值