Инверсный код с повторением

В основу построения кода положен метод повторения исходной кодовой комбинации. Однако в зависимости от четного или нечетного числа единиц в исходной комбинации последняя передается в неизменном виде, либо в инвертированном виде.

Пример.

Инверсный код с повторением - student2.ru - четное число единиц.

Инверсный код с повторением - student2.ru - нечетное число единиц.

Декодирование производится следующим образом. Сначала суммируются все «1» первой комбинации из Инверсный код с повторением - student2.ru разрядов. Если их оказалось четное число, то вторые «п» разрядов без изменения сравниваются поразрядно с первыми. Если число «1» в первой комбинации нечетные, повтор ее инвертируется, а затем уже сравнивается. Если имеется хотя бы одно несовпадение, все 2п элемента стираются (приема нет, ошибки обнаружены).

При использовании этого кода ошибка не будет обнаружена, если одновременно исказятся два (четыре, шесть) элемента в исходной комбинации и элементы с теми же порядковыми номерами в повторной комбинации. Вероятность такого искажения зависит от распределения ошибок в канале, по которому ведется передача.

Защита от групповых ошибок в данном случае зависит еще и от длины кодовых комбинаций п.

Предположим, что все 2п разрядов поражены групповой ошибкой с Инверсный код с повторением - student2.ru . Примем или не примем эту кодовую комбинацию, определится соответствием повторов. Если из-за помех в первых Инверсный код с повторением - student2.ru разрядах оказалась какая-то комбинация непохожая на переданную, то она будет принята как правильная, если в последующих « Инверсный код с повторением - student2.ru » разрядах окажется она же (или инверсная комбинация). Вероятность такого события ~ равна Инверсный код с повторением - student2.ru , при Инверсный код с повторением - student2.ru .

Если Инверсный код с повторением - student2.ru мало, то условная вероятность ложного приема при групповой ошибке велика, если Инверсный код с повторением - student2.ru велико, Инверсный код с повторением - student2.ru - мала.

Так при Инверсный код с повторением - student2.ru Инверсный код с повторением - student2.ru , при Инверсный код с повторением - student2.ru Инверсный код с повторением - student2.ru .

Код Хэмминга

Код Хэмминга относится к линейным систематическим корректирующим кодам с проверкой на четность. Этот код строится путем добавления к « Инверсный код с повторением - student2.ru » информационным символам, образующим кодовую комбинацию, Инверсный код с повторением - student2.ru проверочных символов. Проверочные элементы получаются по результатам проверки на четность групп символов. Так, если к последовательности двоичных символов Инверсный код с повторением - student2.ru добавляется двоичный символ Инверсный код с повторением - student2.ru так, что последовательность Инверсный код с повторением - student2.ru содержит четное число единиц, то говорят: Инверсный код с повторением - student2.ru - определяется проверкой на четность.

В основу построения кода Хэмминга положены следующие правила:

При кодировании к Инверсный код с повторением - student2.ru информационным двоичным символам путем Инверсный код с повторением - student2.ru проверок на четность добавляется Инверсный код с повторением - student2.ru проверочных двоичных символов (во всей группе, включая проверочный, число единиц всегда четно, каждая проверка охватывает определенную группу символов).

При декодировании проверяются на четность те же группы. Если число единиц в группе четно, то результат проверки - Инверсный код с повторением - student2.ru принимается равным «0», в противном случае – «1» (произошла ошибка). Если Инверсный код с повторением - student2.ru проверка дала в результате «1», то это означает, что исказился один из символов, входящий в Инверсный код с повторением - student2.ru -ю группу.

Проверочные группы выбираются так, чтобы, записав результаты проверок Инверсный код с повторением - student2.ru в виде двоичного числа Инверсный код с повторением - student2.ru получился номер искаженного элемента.

Это требование позволяет определить число необходимых проверочных разрядов. Число элементов в коде - Инверсный код с повторением - student2.ru , число разрядов двоичного числа, которое указывает номер искаженного элемента - Инверсный код с повторением - student2.ru , следовательно, Инверсный код с повторением - student2.ru ; Инверсный код с повторением - student2.ru . Иначе, при передаче может быть искажен любой символ (п) или искажений нет (1) – столько вариантов надо различать с помощью проверок.

Инверсный код с повторением - student2.ru ;

Инверсный код с повторением - student2.ru ; Инверсный код с повторением - student2.ru .

Найдем правило, согласно которому определяется состав проверочных групп. Мы потребовали, чтобы число Инверсный код с повторением - student2.ru указывало двоичный номер искаженного символа. «1» в Инверсный код с повторением - student2.ru -ом разряде этого числа указывает на то, что исказился символ, двоичный номер которого содержит «1» в Инверсный код с повторением - student2.ru -ом разряде. Значит, проверка, в результате которой получается Инверсный код с повторением - student2.ru , должна охватывать все символы, порядковые двоичные номера которых содержат «1» в Инверсный код с повторением - student2.ru -ом разряде.

Удобно, чтобы проверочный элемент, при этом, входил только в одну из групп проверок. В противном случае получится дополнительная неопределенность.

Таким образом, Инверсный код с повторением - student2.ru контролирует разряды Инверсный код с повторением - student2.ru -разрядного числа 1, 3, 5, 7, 9,…

Инверсный код с повторением - student2.ru : 2, 3; 6, 7; 10, 11; 14, 15

Инверсный код с повторением - student2.ru : 4, 5, 6, 7, 12, 13, 14, 15,…

Инверсный код с повторением - student2.ru : 8, 9, 10, 11, 12, 13, 14, 15; и т.д.

Элементы, входящие в каждую из проверочных групп только один раз, имеют номера 1, 2, 4, 8, 16, 32 и т.д. их мы и выбираем в качестве контрольных.

Процедуру кодирования – декодирования кодом Хэмминга проиллюстрируем примером.

Пусть Инверсный код с повторением - student2.ru . Тогда, согласно Инверсный код с повторением - student2.ru ; Инверсный код с повторением - student2.ru , Инверсный код с повторением - student2.ru получим Инверсный код с повторением - student2.ru .

двоичные символы а1 а2 а3 а4 а5 а6 а7 а8 а9
итог кодирования 0_

Пусть хотим передать сообщение 10101. Записываем его в позициях информационных разрядов: Инверсный код с повторением - student2.ru .

Находим значения контрольных символов.

1. Инверсный код с повторением - student2.ru

2. Инверсный код с повторением - student2.ru

3. Инверсный код с повторением - student2.ru

4. Инверсный код с повторением - student2.ru

Получим: 001101011

Пусть в канале при передаче исказился седьмой символ и принято сообщение 001101111.

Определим номер искаженного символа и декодируем сообщение.

Инверсный код с повторением - student2.ru

Инверсный код с повторением - student2.ru

Инверсный код с повторением - student2.ru

Инверсный код с повторением - student2.ru

Инверсный код с повторением - student2.ru

Определили номер искаженного символа и инвертируем его (символ), т.е. передавалось: 10101.

Если получим Инверсный код с повторением - student2.ru , это говорит об отсутствии ошибок. Если точнее на отсутствие одиночных ошибок; с двойными, тройными и более высокой кратности ошибками этот код бороться не может.

Наши рекомендации