Завдання виявлення помилки може бути вирішена досить легко. Досить просто передавати кожну букву повідомлення двічі. При отриманні спотвореного повідомлення великою ймовірністю можна здогадатися, яким було вихідне слово. Звичайно, можливо таке спотворення, яке робить неоднозначним інтерпретацію отриманого повідомлення. Проте мета такого способу кодування полягає не у виправленні помилки, а у фіксації факту спотворення і повторної передачі частини повідомлення в цьому випадку. Недолік даного способу забезпечення надійності полягає в тому, що надмірність повідомлення виявляється дуже великий - очевидно, L = 2.
Оскільки помилка має бути тільки виявлена, можна запропонувати інший спосіб кодування. Нехай є ланцюжок інформаційних біт завдовжки ki. Додамо до них один контрольний біт (kc=1), значення якого визначається тим, що нова кодова ланцюжок з ki+1 біт повинна містити парна кількість одиниць - з цієї причини такої контрольний біт називається бітом парності. Наприклад, для інформаційного байта 01010100 біт парності буде мати значення 1, а для байта 11011011 біт парності дорівнює 0. У разі одиночної помилки передачі число 1 перестає бути парним, що і служить свідченням збою. Наприклад, якщо отримана ланцюжок 110110111 (контрольний біт виділений підкресленням), ясно, що передача проведена з помилкою, оскільки загальна кількість одиниць дорівнює 7, тобто непарній. Запропонований спосіб кодування не дозволяє встановити, в якому конкретно бите міститься помилка і, отже, не дає можливості її виправити. Надмірність повідомлення при такому методі передачі дорівнює:
На перший погляд здається, що шляхом збільшення ki, можна як завгодно наближати надмірність до її мінімального значення (Lmin = 1). Однак зі зростанням ki, по-перше, зростає ймовірність парної помилки, яка контрольним бітом не відслідковуються; по-друге, при виявленні помилки потрібно заново передавати багато інформації. Тому зазвичай kc = 8 або kc = 16 і, отже, L = 1,125 (1,0625) відповідно.