Комбинаторные коды. Код Грея и Джонсона. Пример.



Десятичное число Двоичный код Код Грея
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101

Код, обладающий арифметическими свойствами, называется арифметическим. Код, не обладающий арифметическими свойствами, наз. комбинаторным (по названию раздела математики-комбинаторики). Однопеременным наз. код, у кот. Кодовое расстояние равно единице, т.е. при переходе от одной кодовой комбинации к соседней, знак меняется лишь в одном разряде (например 0110, 0111, 0101). Построить однопеременный код можно с помощью диаграммы Карнауга, кот. Имеет 4 столбца и 4 строки. На их пересечении образуется 16 ячеек. Каждая ячейка и каждый столбец нумеруется. Адрес каждой ячейки формируется из номера строки и номера столбца. Задается направление обхода диаграммы, и последовательно выписываются их адреса. Такой код наз. кодом Грея. Правила построения: -направление обхода выбирается произвольно, одну и ту же вершину нельзя обходить дважды, запрещается движение по диагонали. Применение кода Грея повышает надежность кодирования.

 


Принципы формирования кода Джонсона

1. Код Джонсона является кодом с избытком, то есть для числа разрядов больше 2 в коде Джонсона длякодирования некоторого числа состояний требуется большее число разрядов, чем в двоичномарифметическом коде.

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

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

3. Код Джонсона является циклическим кодом. То есть последняя комбинация отличается от первой такжезначением только одного разряда.

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

Пример. Четырёхбитный код Джонсона.

00000001001101111111111011001000

 

Корректирующая способность кода.

При ручной подготовке управляющих программ необходимо осуществлять пересчёт координат с учётом диаметра и длинны инструмента. Требуется упрощение программирования и для этого в системах с ЧПУ предусматривается программирование эквидистанты ,под которой понимается совокупность координат (…) центра фрезы при обходе контура.

Для автоматического учёта эквидистанты применяются корректирующие коды :

G-43-положительные.             G-44-отрицательные.

Коды G-43 и G-44 записываются перед каждой координатой для которой требуется коррекция . Коррекция считается положительной (G-43) ,если координаты центра фрезы больше координаты контура и отрицательной (G-44) если координаты центра фрезы меньше координаты контура..

Отмена коррекции осущ. функцией G40- для всех координат, либо функцией Д00-для той координаты перед которой она указана.

Расчёт величины смещения инструмента можно выполнить автоматически с помощью коррект. кодов G41-при обходе детали справа,G42-при обходе деталислева.

 

 


 

Коды, обнаруживающие ошибки.Пример.

Пример. Пусть у нас есть канал с единичными ошибкой с частотой 10-6 на бит. Если мы хотим исправлять единичные ошибки при передаче блока в 1000 бит, то нам потребуется 10 контрольных бит. При передаче 1 Мбит данных, потребуется 10 000 контрольных бит. В тоже время для обнаружения единичной ошибки достаточно одного бита четности. Поэтому, если мы применим технику повторной передачи, то на передачу 1000 блоков надо будет потратить 1001 бит дополнительно или с повторной передачей 2002 бит, вместо 10,000 бит в случае кода с исправлением ошибки.Применение техники четности "в лоб" в случае групповых ошибок не даст нужного результата. Однако, ее можно скорректировать. Пусть нам надо передать слов по бит. Расположим их в виде матрицы . Для каждого столбца вычислим бит четности и разместим его в дополнительной строке. Матрица затем передается по строкам. По получению матрица восстанавливается и если хоть один бит нарушен, то весь блок передается повторно.Этот метод позволяет обнаружить групповые ошибки длины . Против групповых ошибок длины он бессилен. В общем случае вероятность правильной передачи при длине групповой ошибке , равна .

Простейшим способом обнаружения ошибок является контроль по четности. Обычно контролируется передача блока данных (М бит). Этому блоку ставится в соответствие кодовое слово длиной N бит, причем N>M. Избыточность кода характеризуется величиной 1-M/N. Вероятность обнаружения ошибки определяется отношением M/N (чем меньше это отношение, тем выше вероятность обнаружения ошибки, но и выше избыточность).
При передаче информации она кодируется таким образом, чтобы с одной стороны характеризовать ее минимальным числом символов, а с другой инимизировать вероятность ошибки при декодировании получателем. Для выбора типа кодирования важную роль играет так называемое расстояние Хэмминга.

 

Код Хемминга. Пример

Коды Хэмминга — самоконтролирующийся и самокорректирующийся код построенный применительно к двоичной системе счисления.

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

S=0-ошибки нет. S=1 однократная ошибка . Такой код называется (к+1,к) или (n,n-1). Первое число –количество элементов последовательности , второе –количество информационных символов. Для каждого числа проверочных символов r=3,4,5… существует классический код Хемминга с маркировкой (n,k)=(2r-1.2r-1-r).

(код (7,4))

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


 


Дата добавления: 2018-08-06; просмотров: 2011; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!