2、2s补数的减法

Subtraction of 2, 2s complent numbers

我对 2s 补码的减法有疑问。

我尝试减去 (-22) - 12 = (-22) + (-12) 这是我得到的:

-22 = 1110 1010
-12 = 1111 0100

1110 1010
+   1111 0100
= (1)1101 1110

如果我理解正确,溢出表示它是一个负数,但 1101 1110 不是 34 吗?

我不明白我哪里错了...

谢谢!

您的答案是:

 111011110 = -(2^8-(2^7+2^6+2^4+2^3+2^2+2))=-34 

你可以换个方式计算

  111011110  = -(000100001 +1)= -(000100010)=-34