Линейный код: различия между версиями

Нет изменений в размере ,  6 лет назад
Нет описания правки
Для этого при записи (передаче) в полезные данные добавляют специальным образом структурированную ''избыточную'' информацию, а при чтении (приеме) её используют для того, чтобы обнаружить или исправить ошибки. Естественно, что число ошибок, которое можно исправить, ограничено и зависит от конкретного применяемого кота.
 
С ''кодамикотами, исправляющими ошибки'', тесно связаны ''коды обнаружения ошибок''. В отличие от первых, последние могут только установить факт наличия ошибки в переданных данных, но не исправить её.
 
В действительности, используемые коды обнаружения ошибок принадлежат к тем же классам кодов, что и коды, исправляющие ошибки. Фактически, любой код, исправляющий ошибки, может быть также использован для обнаружения ошибок (при этом он будет способен обнаружить большее число ошибок, чем был способен исправить).
По способу работы с данными коды, исправляющие ошибки делятся на ''блоковые'', делящие информацию на фрагменты постоянной длины и обрабатывающие каждый из них в отдельности, и ''сверточные'', работающие с данными как с непрерывным потоком.
 
=== Блоковые кодыкоты ===
Пусть кодируемаякотируемая информация делится на фрагменты длиной <math>k</math> бит, которые преобразуются в ''кодовые слова'' длиной <math>n</math> бит. Тогда соответствующий блоковый код обычно обозначают <math>(n,k)</math>. При этом число <math>R = \frac{k}{n}</math> называется ''скоростью кода''.
 
Если исходные <math>k</math> бит код оставляет неизменными, и добавляет <math>n-k</math> ''проверочных'', такой код называется ''систематическим'', иначе ''несистематическим''.
Анонимный участник