Безызбыточные коды. Единичный и двоичный коды

Классификация кодов. Кодовое расстояние.

По основанию коды делятся на двоичные (двухбуквенные) и недвоичные (многобуквенные);

Единично-десятичный код - каждая цифра десятичного числа записывается одними единицами. Число 325 запишется
как 111 11 11111.В двоично-десятичном коде каждая цифра десятичного числа от 0 до 9 записывается четырехразрядным двоичным кодом. Такой код позволяет образовать N = 24=16 различных комбинаций. Для обозначения десяти цифр можно использовать любые 10 комбинаций из 16, поэтому возможно большое число двоично-десятичных кодов. Наибольшее применение нашел код, в котором десятичная цифра представлена ее точным двоичным числом. Такой код
иногда обозначают 8—4—2—1 по весу двоичных цифр в каждом разряде. При этом цифры от 0 до 9 обозначают рядом двоичных чисел. Число 325 в двоично-десятичной системе может быть записано следующим образом:
0011—0010—0101. По числу элементов в кодовых комбинациях коды делят на равномерные(комплектные) и неравномерные (некомплектные). Комплектные коды имеют одинаковое число элементов в каждой комбинации. Комбинации некомплектных кодов имеют разную длину. Комплектность кода позволяет несколько повысить его помехоустойчивость, так как возможно контролировать число его элементов. Так, число 325 в комплектном единично-десятичном коде записывается следующим образом: 0000000111 — 0000000011 — 0000011111. При этом передача разделительных знаков между разрядами не обязательна, так как каждый разряд
содержит одинаковое количество символов.

По назначению:

*ТМ-е

*телеграфные

*цифровые

По принципу комбинирования:

*Числовые

*комбинаторные

По передаче во времени:

*последовательные

*параллельные

Для оценки помехозащищенности кода вводят понятие кодового расстояния d — числа разрядов, в которых элементы одной кодовой комбинации отличаются от другой. Так, комбинация 0000 и 0001 отличаются только в одном разряде (d = 1). Это означает, что появление 1 в первом разряде комбинации 0000 или 0 в первом разряде комбинации 0001 приводит к изменению передаваемого сообщения. Для того, чтобы избежать ошибки в случае одиночных искажений, нужно увеличить кодовое расстояние до d = 2, исключив комбинации только в одном разряде (элементе). Кодовое расстояние, обозначаемое буквой d, определяется путем сложения двух
комбинаций по модулю 2 (mod 2), которое обозначается знаком + и производится в соответствии с табл.

При суммировании по mod 2 двух комбинаций нули будут в тех разрядах, где символы в обеих комбинациях одинаковы, а единицы — где символы различны. Например, сложение по mod 2 двух пятиразрядных чисел дает следующий результат:

Отсюда d =3.

Для того, чтобы определить кодовое расстояние между различными кодовыми
комбинациями, составляют матрицы

По наличию избыточности коды делятся на избыточные (помехоустойчивые) и неизбыточные (непомехоустойчивые). К последним относится все коды, в которых замена в комбинации одного символа другим (например, 1 на 0 или 0 на 1) приводит к ошибке. Числовые коды, в которых используются все возможные комбинации (коды на
все сочетания), являются непомехоустойчивыми. Искажение хотя бы одного символа в передаваемой комбинации приводит к появлению новой комбинации, соответствующей другому сообщению. Однако, несмотря на низкую помехоустойчивость, эти коды
широко применяют в тех случаях, когда влияние помех при передаче несущественно. Помехозащищенным кодом можно передать меньшее число сообщений, чем кодом, в котором используются все комбинации при одинаковом числе элементов в кодах. При одинаковом числе сообщений в комбинациях помехозащищенного кода приходится затрачивать большее число элементов. Такие коды имеют избыточность, которую оценивают коэффициентом избыточности

где n — число элементов в комбинациях кода с избыточностью; n0 — число элементов в комбинациях неизбыточного кода. При кодовом расстоянии dmin > 2 можно не только обнаружить, но и исправить ошибку. Рассмотрим две кодовые комбинации 0011 и 1000, отличающиеся тремя элементами. Допустим, при передаче комбинации 1000 произошло одиночное искажение, получим 0000 1100 1010 или 1001. Можно с уверенностью сказать, что была передана комбинация 1000, т.е. исправить ошибку.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: