Two's Complement (Cambridge (CIE) O Level Computer Science)
Revision Note
Written by: Robert Hampton
Reviewed by: James Woodhouse
Two's Complement
What is two's complement?
Two's complement is a method of using signed binary values to represent negative numbers
Using two's complement the left most bit is designated the most significant bit (MSB)
To represent negative numbers this bit must equal 1, turning the column value in to a negative
Working with 8 bits, the 128 column becomes -128
-128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | |
---|---|---|---|---|---|---|---|---|
1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | = -1 |
In the example above to represent -1, add column values with a 1 to the MSB
MSB (-128)
Add 64 (-128+64 = -64
Add 32 (-64+32 = -32)
Add 16 (-32+16 = -16)
Add 8 (-16+8 = -8)
Add 4 (-8+4 = -4)
Add 2 (-4+2 = -2)
Add 1 (-2+1 = -1)
The two's complement representation of -1 is 11111111
Quick two's complement conversion
To represent -76
Write out the positive version of the number
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | |
---|---|---|---|---|---|---|---|---|
0 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | = 76 |
Starting from the least significant bit (right most column), copy out the binary values up to and including the first 1
-128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 0 | 0 |
For the remaining digits, invert them (0s to 1s/1s to 0s)
-128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
-128 + 32 + 16 + 4 = -76
The two's complement representation of -76 is 10110100
Last updated:
You've read 0 of your 5 free revision notes this week
Sign up now. It’s free!
Did this page help you?