补码

本文探讨了补码的概念及其在计算机系统中的应用,旨在澄清补码如何统一加减法运算,以及补码表示的整数范围。通过举例说明,解释了补码如何简化有符号数的运算,特别是如何处理正负零的统一表示。同时,文中还讨论了原码、反码与补码的关系,并指出补码中‘取反加一’规则的来源和意义。
摘要由CSDN通过智能技术生成

文章标题用补码不是很合适,但是目前自己还是比较乱,没理出什么头绪来。

先明白一个关系:在计算机系统中,机器码到底是独以补码的形式保存数据或字符,还是原码补码兼而有之。

何为带符号数?何为不带符号数?

如果是带符号数那就包括 "+","-"罗,为保存符号必须腾出一位用来专门保存。

如果是无符号数,就是默认为正数,所有的分配位都仅仅是用来存储数值的。

那么补码是专门针对有符号数而设置的还是怎么的?


为什么要设立补码呢?

书上如下解释:

第一是为了能让计算机执行减法:
[a-b]补=a补+(-b)补

第二个原因是为了统一正0和负0
正零:00000000
负零:10000000
这两个数其实都是0,但他们的原码却有不同的表示。
但是他们的补码是一样的,都是00000000
特别注意,如果+1之后有进位的,要一直往前进位,包括符号位!(这和反码是不同的!)
[10000000]补
=[10000000]反+1
=11111111+1
=(1)00000000
=00000000(最高位溢出了,符号位变成了0
 
我对于正0负0我可以理解,但是上面说的统一了加减法,这就有点纳闷,不太理解。

OK,加减法的统一我开始理解了。加法还是和以前一样做,只是减法便的不一样了,应用补码,则只需做加

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值