黑马程序员C语言教程:C基础技术文档

黑马程序员C语言教程:C基础技术文档

黑马程序员C语言教程:C基础技术文档

3)如果M = |N|,那么最终运算结果为0,溢出位被舍弃了,这与M > |N|的情况类似。当M也为负数的时候,虽然符号位相加,最高位变为0,但由于非符号位相加也存在溢出现象,符号位又变回了1,即负数加上负数还是负数,这是合理的。用公式表示如下,

N的补码+ M的补码= 2^7 + 2^7 - |N| + 2^7 + 2^7 - |M| = 2^7 + 2^7 - (|N| + |M|),

即等于-(|N| + |M|)的补码。

当然正数与正数相加就很好理解了。

通过以上分析,我们可知在计算机中使用补码进行运算,是很方便的,即使得计算机可以像普通的四则运算一样进行加减乘除等运算。

相关推荐
相关主题
热门推荐