16.2. Коды с обнаружением ошибок
Код с проверкой на четность. Такой код образуется путем добавления к передаваемой комбинации, состоящей из m информационных символов, одного контрольного символа k (0 или 1) так, чтобы общее число единиц в передаваемой комбинации было четным.
| m | k | n |
| 11011 | 0 | 110110 |
| 11100 | 1 | 111001 |
Если получено слово с нечётным количеством единичек, то при передаче произошла ошибка.
Например, для кода с m = 5 и вероятностью ошибки p = 10-2 коэффициент обнаружения составит Kобн = 0,9. То есть обнаруживаем 90 % ошибок, при этом избыточность будет составлять L = 0,17 (17 %).
Код с постоянным весом. Этот код содержит постоянное число единиц и нулей. Для примера приведены коды с двумя единицами из пяти и тремя единицами из семи.
| N = C52 = 10 | N = C73 = 35 |
| 11000 | 0000111 |
| 10010 | 1001001 |
| 00101 | 1010100 |
Число кодовых комбинаций составит:
Этот код позволяет обнаруживать любые одиночные ошибки и часть многократных ошибок. Не обнаруживаются этим кодом только ошибки смещения, когда одновременно одна единица переходит в ноль и один ноль переходит в единицу, два ноля и две единицы меняются на обратные символы и т.д.
Для кода С73 при p = 10-2 коэффициент обнаружения составит Kобн = 0,985, избыточность составляет L = 27%.
Корреляционный код (Код с удвоением). Элементы данного кода заменяются двумя символами, единица «1» преобразуется в 10, а ноль «0» в 01.
Вместо комбинации 1010011 передается 10011001011010. Ошибка обнаруживается в том случае, если в парных элементах будут одинаковые символы 00 или 11 (вместо 01 и 10).
Например, при m = 5, n = 10 и вероятности ошибки p = 10-2, Kобн = 0,995. Но при этом избыточность будет составлять 50%.
Инверсный код. К исходной комбинации добавляется такая же комбинация по длине, т. е. число символов удваивается. Если в исходной комбинации четное число единиц, то добавляемая комбинация повторяет исходную комбинацию, если нечетное, то добавляемая комбинация является инверсной по отношению к исходной.
| m | k | n |
| 11011 | 11011 | 1101111011 |
| 11100 | 00011 | 1110000011 |
Прием инверсного кода осуществляется в два этапа. На первом этапе суммируются единицы в первой основной группе символов. Если число единиц четное, то контрольные символы принимаются без изменения, если нечетное, то контрольные символы инвертируются. На втором этапе контрольные символы суммируются с информационными символами по модулю два. Нулевая сумма говорит об отсутствии ошибок. При ненулевой сумме, принятая комбинация бракуется. Покажем суммирование для принятых комбинаций без ошибок (1, 3) и с ошибками (2, 4):
Данный код обнаруживает практически любые ошибки, кроме редких ошибок смещения, которые одновременно происходят как среди информационных символов, так и среди соответствующих контрольных.
При m = 5, n = 10 и p = 10-2, Kобн = 1 · 10-5.
Еще по теме 16.2. Коды с обнаружением ошибок:
- 16.3. Корректирующие коды
- ГЛАВА ВОСЬМАЯ СЕКРЕТНЫЕ КОДЫ, МИСТИЧЕСКИЕ ЦИФРЫ
- 22.2. Классификация юридических ошибок
- 22.3.Причины-условия совершения ошибок
- Случайный поиск и метод проб и ошибок
- Статья 36. Исправление описок, опечаток, арифметических ошибок
- Обдумывание ошибок
- Статья 29.12.1. Исправление описок, опечаток и арифметических ошибок Комментарий к статье 29.12.1
- Классификация категориальных ошибок
- Статья 235. Исправление описок и явных арифметических ошибок в решении
- ЭКСТРАСЕНСОРНОЕ ВОСПРИЯТИЕ: ВИДЫ ОШИБОК