Finding errors: parity, checksums and echo checks Cambridge IGCSE Computer Science revision
Not started
Learn it
In plain words
Data travelling along a wire or through the air can be damaged by interference. A 1 can become a 0, bits can go missing, extra bits can appear. The receiver needs a way to notice.
All three methods here work the same way underneath: send a little extra information along with the data, so the receiver can test whether what arrived still makes sense.
6 things to know
- Interference during transmission can cause data loss, data gain and data change.
- Parity check: one bit in each byte is a parity bit. With even parity it is set so that the byte has an even number of 1s. With odd parity, an odd number. The receiver counts the 1s. If the count is wrong, there is an error.
- A parity check cannot spot an even number of changed bits in one byte, and cannot say which bit is wrong.
- Parity block check: bytes are sent in a block with an extra parity byte, giving a parity bit for every row and every column. One wrong bit shows up in both its row and its column, so it can be located.
- Checksum: a value is calculated from the data and sent with it. The receiver does the same calculation. If the two values differ, there is an error.
- Echo check: the receiver sends the data back to the sender, which compares it with what it sent. If they differ, there was an error (in one direction or the other).
Worked example
A system uses even parity. The byte 01101101 is received. Has an error occurred?
- Count the 1s in the byte: there are five.
- Five is an odd number, but with even parity every byte should hold an even number of 1s.
- An error has been detected.
Tips and tricks
- Count the 1s, including the parity bit itself. You are checking whether the count is even or odd, not adding up place values.
- A parity check that passes does not prove the data is right. Two changed bits cancel out. Say "no error detected", not "no error".
It lands in your notebook with its questions as flashcards.
Finding errors: parity, checksums and echo checks: 6 questions and answers
These are the quiz’s questions. Do the quiz first, then come back here for the ones that got you.
In even parity, how many 1s should each byte contain?
The parity bit is set to make the total even.
A system uses even parity. Which byte contains an error?
It has three 1s, which is odd. The others have four, four and eight.
Which kind of error can a simple parity check miss?
Two changes leave the count of 1s even or odd, just as it was.
In a checksum, what does the receiver do?
Different values mean the data has changed.
Which method sends the received data back to the sender for comparison?
The data is "echoed" back.
What can a parity block check do that a single parity bit cannot?Stretch
The wrong bit sits where the failing row meets the failing column.
Quiz
6 questions
Tap an answer and you’ll see straight away whether it’s right, and why.
Worksheet
3 questions, 7 marks. Write your answers on paper, then check them.
Finding errors: parity, checksums and echo checks
Cambridge IGCSE Computer Science 0478 · 7 marks · papermunch.org
Name ______________________________ Date ______________
A system uses odd parity. State whether the bytes 11010110 and 01110010 would be accepted, and why.[2]
Show answerHide answer
11010110 has five 1s, which is odd, so it is accepted. 01110010 has four 1s, which is even, so an error is detected.
Describe how a checksum is used to detect an error in transmitted data.[3]
Show answerHide answer
A value is calculated from the data using an agreed method before it is sent, and the value is sent with the data. The receiver recalculates it. If the two values do not match, an error has occurred.
Describe how an echo check works.[2]
Show answerHide answer
The receiver sends the data it received back to the sender. The sender compares it with the original, and if they differ an error is detected.
Answers: Finding errors: parity, checksums and echo checks
- 1. 11010110 has five 1s, which is odd, so it is accepted. 01110010 has four 1s, which is even, so an error is detected.
- 2. A value is calculated from the data using an agreed method before it is sent, and the value is sent with the data. The receiver recalculates it. If the two values do not match, an error has occurred.
- 3. The receiver sends the data it received back to the sender. The sender compares it with the original, and if they differ an error is detected.



