Как один дополнительный бит выдаёт ошибку

Передатчик считает единицы в данных и добавляет к ним бит так, чтобы общее число единиц соответствовало выбранному правилу. При чётной чётности оно должно быть чётным; при нечётной — нечётным. Например, в последовательности `1011` три единицы. Для чётной чётности к ней добавят `1`, чтобы всего стало четыре.

Получатель повторяет подсчёт. Если вместо ожидаемой чётности получается противоположная, значит, во время передачи что-то изменилось: мог перевернуться бит данных или сам бит проверки. Поэтому контроль обнаруживает сбой, но не показывает, где именно он произошёл.

Что проверка умеет — и чего не умеет

Если изменился ровно один бит, чётность обязательно нарушится: число единиц станет на одну больше или меньше. Такой простой контроль удобен там, где важно быстро заметить повреждение данных, не передавая для этого длинную дополнительную информацию.

Но проверка чётности не исправляет ошибку. Кроме того, если перевернутся два бита, общее число единиц изменится на чётное число, и правило может по-прежнему выполняться. Получатель не заметит такой сбой. По той же причине чётность не позволяет определить, сколько ошибок произошло: она сообщает лишь, совпал ли результат подсчёта с условием.

Иными словами, один бит проверки — это простой сигнал тревоги, а не способ восстановить сообщение. Для передачи, где нужно не только обнаруживать, но и исправлять повреждения, используют более сложные схемы контроля.