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