加减运算
一、补码的加减运算公式
1、
[X+Y]补 = [X]补 + [Y]补
[X-Y]补 = [X]补 + [-Y]补
说明:
1、使用补码进行加减运算,符号位和数值位一样参加运算。
2、补码的减法可以用加法来实现,任意两数之差的补码等于被减数的补码与**减数相反数的补码(这里有一个求补操作)**之和

那我们来举一些例子来说明一下这个运算:

2、判断补码运算的溢出
我在这里说明一下,我学习这个内容的时候,一直都弄不明白我们的机器检测溢出到底有什么用,然后我后来找到一个说服自己的理由就是:机器检测溢出,如果是下溢,机器就认为这个数是机器零,如果是上溢,机器就没有办法表示这个数,然后可能会发生类似我们程序的一个报错了无法执行,这个时候我们可能要转换数据类型,我也不知道这个想法是对还是不对,所以这里就提出来,错误不要喷。(这个想法的来源是“浮点数的表示范围”)。下面我们切入正题
溢出:当运算结果超出机器数的表示范围时,称为溢出。计算机必须具备检测运算结果是否发生溢出的能力,否则会得到错误的结果。
对于加减运算,常用来判断溢出的方法:
1、确定发生溢出的情况:
正数相加,且结果符号位为1;
负数相加,且结果符号位为0;
补码与移位运算详解

本文详细介绍了补码加减运算的原理及溢出判断方法,并解释了不同类型的移位运算及其应用场景,有助于深入理解计算机中数值运算的底层机制。
最低0.47元/天 解锁文章
7448

被折叠的 条评论
为什么被折叠?



