ones complement
ones complement
A system used in some computers to represent negative
numbers. To negate a number, each bit of the number is
inverted (zeros are replaced with ones and vice versa). This
has the consequence that there are two reperesentations for
zero, either all zeros or all ones.
... 000...00011 = +3 000...00010 = +2 000...00001 = +1 000...00000 = +0 111...11111 = -0 111...11110 = -1 111...11101 = -2 111...11100 = -3 ...
Naive logic for ones complement addition might easily conclude that -0 + 1 = +0.
The twos complement avoids this by using all ones to represent -1.
... 000...00011 = +3 000...00010 = +2 000...00001 = +1 000...00000 = +0 111...11111 = -0 111...11110 = -1 111...11101 = -2 111...11100 = -3 ...
Naive logic for ones complement addition might easily conclude that -0 + 1 = +0.
The twos complement avoids this by using all ones to represent -1.
This article is provided by FOLDOC - Free Online Dictionary of Computing (foldoc.org)