Cambridge IGCSE Computer Science · Syllabus 0478 · Data Representation
Two's Complement
What is Two's Complement?
Two's complement is a method of representing positive and negative integers in binary in which the most significant column carries a negative place value, so an 8-bit pattern represents any integer from minus 128 to plus 127 with a single representation of zero.
This definition is part of the Data Representation chapter in Cambridge IGCSE Computer Science.
Two's Complement in context
Two's complement is the standard way of representing negative numbers in binary. In an 8-bit two's-complement number the leftmost column is given the place value −128 instead of +128; every other column keeps its usual positive value. That single change lets one 8-bit pattern represent any integer from −128 to +127. A positive value has a most significant bit of 0; a negative value has a most significant bit of 1.
Common mistakes with Two's Complement
- 4. Reading the most significant bit as a minus sign. Why it fails In two's complement the leading 1 is not a sign symbol attached to the rest; it is a place value of −128. Reading 11010011 as "minus 1010011" gives −83. The correct value is −45. Fix Either use the signed place values with −128 at the left, or invert and add 1. See section 1.1 H.
- M8. "The most significant bit is simply a minus sign." Why it fails In two's complement the leading 1 is a place value of −128 that is added to the rest — it is not a symbol you can detach and ignore. Correct model Read 11010011 as −128 + 64 + 16 + 2 + 1 = −45, not as "minus 1010011" = −83. Exam-safe "In two's complement the most significant bit has a place value of −128; a leading 1 indicates a negative number but the other bits still add positive values to it." Test yourselfHideQ. What denary value is the two's-complement pattern 11111111?A. −1, not −127.
- M9. "Two's complement has both a positive and a negative zero." Why it fails That is true of some other signed schemes, but not two's complement. Here 10000000 is already taken — it means −128. Correct model There is exactly one zero, 00000000. That is why the range −128 to +127 is lopsided. Exam-safe "Two's complement has a single representation of zero, which is why an 8-bit range runs from −128 to +127." Test yourselfHideQ. What does 10000000 represent in 8-bit two's complement?A. −128.

