0101011010 346_{10} +1001000101 -443_{10} ------------ --- 1110011111 -97_{10} no overflow Explanation: ----------- 0101011010: This is positive (leftmost bit is 0), so just interpret this as a base 2 number => 346_{10}. 1001000101: This is negative (leftmost bit is 1), so take the two's complement and then negate the base 2 interpretation of the result: 1001000101 0110111010 flip all bits + 1 ---------- 0110111011 = 443_{10}, so original number is -443. Add bits to get 1110011111, then interpret it like the second number above, since it is negative. This gives -97, the correct result; no overflow occurred.