美文网首页计算机组成与结构(笔记)
加减法运算的溢出处理(补码)

加减法运算的溢出处理(补码)

作者: Wovw | 来源:发表于2020-11-09 23:11 被阅读0次

    当运算结果超出机器数所能表示的范围时,称为溢出。

    显然,两个异号数相加或两个同号数相减,结果不会溢出。仅当两个同号数相加或两个异号数相减时,才有可能发生溢出。

    一旦溢出,运算结果就不正确了,因此必须将溢出的情况检查出来。

    运算

    在上例中,1256得出正确结果,34为溢出。

    判别溢出的方法:

    (1)符号相同的两数相加,如果结果的符号与加数(被加数)不相同,则为溢出。

    (2)当任意符号两数相加时,如果数值最高位产生的进位 不等于 符号位的进位,则为溢出。

    (3)采用双符号位。正数的双符号位为00,负11。符号位参与运算,当结果的两个符号位不相同时,为溢出。

    一般运算时用双符号位,存储时仅保留一个符号位。因为正常情况下,两个符号位保持一致;

    而发生溢出情况时,一般要产生出错信号,由CPU执行纠错程序进行处理,情况严重时将停机。

    相关文章

      网友评论

        本文标题:加减法运算的溢出处理(补码)

        本文链接:https://www.haomeiwen.com/subject/fiarbktx.html