So let’s say I want to add -7 and -7 together using 2s complement binary notation. I tried this:
-7 -> -00000111 -> 11111001
1 1 1 1 1 0 0 1
+ 1 1 1 1 1 0 0 1
__________________
1 0 0 0 0 0 0 1 0
But after removing the extra digit, I get 00000010 = 2 instead of 11110001 = 14. What did I do wrong?
Somewhere along the line, you lost (and kept losing) the carry flag:
Negating
11110010(invert bits and add 1) gives you00001110, which is definitely 14 (8 + 4 + 2).