计算机运算时是如何判断发生溢出的?

2024-12-21 23:35:57
推荐回答(5个)
回答1:

要通过计算机运算,就先的申请计算机内存,存储数据,申请的时候数据有数据类型,数字的话用int类型举例把,int在不同的语言中他占用的内存是不同的,就以c语言为例,是占用8个字节,在计算机中是以2进制表示(00000000 00000000)共8位(最高位是0代表正数,1则是负数);2个数相加就是2个16位的2进制相加,比如01000000 00000000(16384)+01000000 00000000(16384)=10000000 00000000 ;这就溢出了,因为最高位是符号位,1代表负数;大概是这样把,不知道有错的没,呵呵

回答2:

如果是有符号数加法,把运算结果最高位的进位和次高位向最高位的进位相异或,如果异或结果为一,则发生了溢出,如果为零,则没有溢出。如果是无符号加法,则看溢出标志位OV,如果OV为一,则发生了溢出,如果为零则没有溢出。

回答3:

计算机运算时是如何判断发生溢出的?
-------
“计算机运算”,这里面有软件和硬件方面的判断层次。
硬件就是CPU。
CPU是大规模的集成电路,其中有个异或门。
它把运算结果最高位的进位和次高位向最高位的进位相异或,送到OF标志位。
软件则要根据OF的值来判断,OF=1则是溢出。

回答4:

超过字符长度就溢出了

回答5:

坐而论道是真相