Код Хэмминга — это алгоритм, который позволяет закодировать информационное сообщение определённым образом и после передачи определить, появилась ли ошибка в этом сообщении, и, при возможности, восстановить его. habr.com
Алгоритм состоит из двух частей: nsportal.ru
- Первая часть кодирует исходное сообщение, вставляя в него в определённых местах контрольные биты, вычисленные особым образом. nsportal.ru habr.com
- Вторая часть получает входящее сообщение и заново вычисляет контрольные биты по тому же алгоритму, что и первая часть. nsportal.ru habr.com
Если все вновь вычисленные контрольные биты совпадают с полученными, то сообщение получено без ошибок. nsportal.ru infourok.ru В противном случае выводится сообщение об ошибке, и, если это возможно, ошибочные данные корректируются. spravochnick.ru
Существует общий алгоритм коррекции ошибок на основе кода Хэмминга: startmilandr.codepx.ru
- Запись слова. startmilandr.codepx.ru На основании записываемых данных вычисляются проверочные (контрольные) биты, которые передаются на запись совместно с исходным словом. startmilandr.codepx.ru
- Чтение слова. startmilandr.codepx.ru Производится повторный расчёт контрольных бит и сравнение считанных проверочных бит с заново рассчитанными. startmilandr.codepx.ru
- Если проверочные биты совпадают, то ошибок нет, проверочные биты отбрасываются, и исходное слово передаётся дальше на чтение. startmilandr.codepx.ru
- Если проверочные биты не совпадают и имеет место одиночная ошибка, то происходит её исправление, операция чтения при этом также успешно выполняется. startmilandr.codepx.ru
- Если обнаружена двойная ошибка или более, то данные не восстанавливаются, и происходит ошибка чтения. startmilandr.codepx.ru