把 x=-124,y=-6,分别用二进制补码格式表示,位模式长度为 8。
并用补码计算 x+y 的结果。写出计算过程,并说明是否溢出。
答:
x =-124 = -111 1100b
[x]原 = 1111 1100b
[x]反 = 1000 0011b
[x]补 = 1000 0100b
y =-6d = -110b
[y]原 = 1000 0110b
[y]反 = 1111 1001b
[y]补 = 1111 1010b
列竖式计算:
1000 0100
+ 1111 1010
----------
(1) 0111 1110 = [x + y]补
负数加负数,得到正数! 这就是溢出了。
因为,x + y =-130,超出了 8 位补码的表示范围。
所以,发生溢出。