How Binary Addition Works (Spec 3.3.4)
Binary addition follows the exact same place-value principles as standard decimal column addition taught in primary school: you line the numbers up on the right (the units or least significant bit) and work column by column towards the left.
In decimal (base 10), a column carries when the sum reaches 10. In binary (base 2), a column carries as soon as it reaches 2, because 2 in binary is written as 10β (0 in this column, carry 1 to the next).
No value in this column. Write 0, carry 0.
Total is 1. Write 1, carry 0.
Total is 2. Write 0, carry 1 to the next column.
Total is 3. Write 1, carry 1 to the next column.
Adding Three Binary Numbers (Spec 3.3.4 Requirement)
Many GCSE textbooks only show how to add two binary numbers. However, the GCSE Computer Science specification explicitly states:
βBe able to add together up to three binary numbers (each up to 8 bits).β
When adding three numbers, any column can contain up to three 1s from the operands, plus a possible carried 1 from the previous column. In exam papers, questions are carefully constructed so that no column has more than three 1s in total:
- If a column has three 1s:
1 + 1 + 1 = 11β. Write 1 in the answer row, and carry 1 into the next column. - Always write down your carry row clearly under or above the operands. In a 3-mark exam question, showing your carry marks earns a method mark even if an arithmetic slip occurs.
What is an Overflow Error? (The Essential Exam Concept)
Computers store data in hardware memory locations called registers. An 8-bit register has 8 electronic flip-flops, meaning it can only store bit patterns from 0000 0000 (0) to 1111 1111 (255).
Why Does Overflow Happen?
When adding two numbers whose sum is greater than 255 (e.g. 200 + 100 = 300), the answer requires a 9th bit (weight 256):
Because the processor register only holds 8 bits, the leftmost 9th bit carries off the end and is discarded. The register only retains the lower 8 bits: 0010 1100, which is only 44 in denary! This discrepancy is an overflow error.
How to Answer in the Exam (2-Mark Model Answer):
- β’ Mark 1: State that the result exceeds 255 / requires 9 bits.
- β’ Mark 2: State that an 8-bit register cannot store the extra 9th bit, so it is lost/discarded, resulting in an incorrect stored value.
Worked Exam Examples
Add the 8-bit binary numbers 0011 0101 (53) and 0001 1110 (30).
- Col 0 (wt 1): 1 + 0 = 1
- Col 1 (wt 2): 0 + 1 = 1
- Col 2 (wt 4): 1 + 1 = 10β β write 0, carry 1
- Col 3 (wt 8): 0 + 1 + 1 (carry) = 10β β write 0, carry 1
- Col 4 (wt 16): 1 + 1 + 1 (carry) = 11β β write 1, carry 1
- Col 5 (wt 32): 1 + 0 + 1 (carry) = 10β β write 0, carry 1
- Col 6 (wt 64): 0 + 0 + 1 (carry) = 1
- Col 7 (wt 128): 0 + 0 = 0
- Answer:
0101 0011(64 + 16 + 2 + 1 = 83)
Add the three binary numbers 0000 0111 (7), 0000 0011 (3), and 0000 0001 (1).
- Col 0 (wt 1): 1 + 1 + 1 = 11β β write 1, carry 1
- Col 1 (wt 2): 1 + 1 + 0 + 1 (carry) = 11β β write 1, carry 1
- Col 2 (wt 4): 1 + 0 + 0 + 1 (carry) = 10β β write 0, carry 1
- Col 3 (wt 8): 0 + 0 + 0 + 1 (carry) = 1
- Cols 4 to 7: all 0
- Answer:
0000 1011(8 + 2 + 1 = 11)
Four Common Mistakes That Cost Marks
Mistake 1: Writing β2β or β3β in Binary Columns
Binary numbers can ONLY contain the digits 0 and 1. Writing a 2 in a column immediately loses the answer mark. Remember: 2 is written as 10β (write 0, carry 1) and 3 is 11β (write 1, carry 1).
Mistake 2: Forgetting to Add the Carry Bit
When working quickly under exam conditions, students often compute 1 + 0 in column 3 and forget that column 2 produced a carry! Always write your carries clearly in a dedicated carry row.
Mistake 3: Dropping the 9th Bit on βGive the Full Answerβ Questions
If an exam question asks: βAdd these numbers and give the full binary answerβ, write all 9 bits (e.g. 1 0010 1100). If it asks what value is stored in an 8-bit register, write the 8 bits (e.g. 0010 1100) and state that overflow occurred.
Mistake 4: Not Checking Your Answer in Denary
Always spend 15 seconds checking your arithmetic in decimal! Convert the two inputs to denary (e.g. 53 and 30), add them (83), and verify that your binary answer equals 83.
