补码的存在是为了变减法为加法,简化了计算过程,即硬件的设计难度。
首先要知道两个零是怎么来的,0包括+0和-0,在原码和反码中根据其计算公式,
针对于0原码有两种表示形式:
+0:0000 0000
-0: 1000 0000
一个数如果为正,则它的原码、反码、补码相同。
一个数如果为负,则符号位为1,其余各位是对原码取反,然后整个数加1。
为了简单起见,我们用1个字节来表示一个整数。
0的补码表示+0的补码:0000 0000
0的补码表示-0的补码:
第一步:1111 1111
第二步+1= 1 0000 0000
第三部:进位1被丢弃,即0000 0000 与+0的补码相同
1、在计算机系统中,数值一律用补码来表示(存储)。
主要原因:
使用补码,可以将符号位和其它位统一处理;
同时,减法也可按加法来处理。
另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。
2、补码与原码的转换过程几乎是相同的。
核心知识点:
1. 正数的原码、反码和补码都相同;
2. 负数原码和反码的相互转换:符号位不变,数值位按位取反;
3. 负数原码和补码的相互转换:符号位不变,数值位按位取反,末位再加1;
4. 0的补码表示只有一种。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/72750.html