标志位的产生:
OF:用来判断有符号数的加减法是否溢出
硬件计算的方法:最高位产生的进位 异或 次高位产生的进位
当时,OF为1时,为溢出
SF:判断有符号数的计算结果是正数还是负数
硬件计算方法:最高位的本位和
如果结果为1,结果为负数
CF:无符号数的溢出判断
硬件计算方法:最高位产生的进位 异或 sub(1表示减法,因为要补码+1;0表示加法)(其实sub也就是进位)
如果结果为1,表示溢出
ZF:表示结算结果是否为0
硬件计算方法:两个数的运算结果为nbit,n个位置都是0,ZF为1
如果ZF为0时,运算结果为0
正数加正数,结果溢出叫做上溢
负数加负数,结果溢出叫做下溢
机器定点数的加减法溢出的判断:
因为计算机对两个数的处理,都是加法。
有符号数的加法正常进行,而减法也可以转化为加法。
所以,加法和减法可以用加法一种逻辑实现,所需要处理的就只是补码的问题。