Из этого же множества элементов может быть образовано пространство, определяемое по метрике Хэмминга, т.е.
В этом случае расстояние между любой парой слов определяется числом несовпадающих символов (суммирование по модулю 2) по всем разрядам. Эта метрика широко применяется для сравнения кодов по возможностям обнаружения и исправления ошибок.
Кодирование. Сообщения, подлежащие передаче по каналу связи, должны быть представлены в форме, наиболее удобной для передачи по данному каналу. Таким образом, подразумевается преобразование одного исходного пространства сигналов в эквивалентное ему. Подобное преобразование проходит в два этапа. Первоначально из избыточного множества сигналов
следует выделить подмножество , содержащее М нужных сигналов. Затем их необходимо поставить в однозначное соответствие с исходными сигналами. Первый этап может быть осуществлен различными способами, а второй — М! Таким образом, общее число возможных правил кодирования .Подмножество
выбранное по любому из К правил, составляет код. По ГОСТ 26.014 — 81 код — совокупность условных сигналов, обозначающих дискретные сообщения.Символическая запись сложного сигнала из подмножества
представляет собой кодовую комбинацию (кодовую последовательность). Вид записи комбинации зависит от системы счисления, используемой для рассматриваемого кода, так как любая комбинация это число, записанное в определенной системе счисления.Основание системы счисления состоит из конечного набора цифр (символов), из комбинаций которых может быть образовано любоечисло. Так, основание наиболее привычной в обычной жизни десятичной системы счисления содержит 10 цифр (0 — 9), а основание наиболее распространенной в технике передачи и обработки данных двоичной системы составляют цифры 0 и 1.
Любое число в системе счисления с основанием х может быть представлено многочленом:
где: a— знаки основания от 0 до х - 1.
Например, десятичное число 169 в двоичной системе записывается так:
или
F(х) = 10101001
Обычно при записи двоичного числа в виде многочлена опускают члены с коэффициентом 0 и не пишут множители 1, т. е. для числа 169 получаем:
F(х) = х7 + х5 + х3 + 1.
Представление кодовых комбинаций в виде многочленов широко используется благодаря возможности проводить над ними обычные алгебраические операции при анализе свойств кода. Однако для сохранения заданного кодом числа разрядов при сложении любых комбинаций используется сложение по модулю 2, т.е. по следующим правилам:
Пространство сигналов, построенное в соответствии с этими требованиями, удовлетворяет метрике Хэмминга
Действительно, при использовании n разрядов в комбинации возможно всего
комбинаций. Сложение любых двух (или большего числа) комбинаций по модулю 2 дает комбинацию из указанной совокупности. Данные коды называются систематическими. Если в коде используются всевозможные комбинации, то некоторые отличаются друг от друга только в одном разряде, т.е. по Хеммингу расстояние d=1. Такие коды являются непомехозащищенными, так как искажение какого-либо разряда помехами (любого происхождения) приводит к другой разрешенной комбинации.Однако, если выбрать для использования только комбинации с расстоянием d=2, одиночные искажения в комбинациях легко обнаруживаются. Такая совокупность комбинаций будет уже представлять код с обнаружением одиночных ошибок. Коды с расстоянием d = 2 называются помехозащищенньми. Они подразделяются на две группы: коды с обнаружением ошибок (пассивная помехоустойчивость); коды с обнаружением и исправлением ошибок (активная помехоустойчивость), т.е. корректирующие коды.
По числу разрядов, используемых в кодовых комбинациях, коды могут быть равномерными и неравномерными, т.е. содержащими одинаковое или разное число элементов в комбинациях.
Непомехозащищенные коды (группа кодов с кодовым расстоянием d = 1) получили достаточно широкое распространение в телемеханических системах, несмотря на низкую помехозащищенность.
Наиболее известными представителями этой группы являются группы Морзе, Бодо, Грея, международный телеграфный и двоичнодесятичный коды.
В коде Морзе используются комбинации двух символов — точка и тире, разделяемые паузой. Длительности точки и паузы между элементами одной комбинации одинаковы, а длительность тире в 3 раза больше. Число элементов (и время передачи) в комбинациях колеблется в широких пределах, что является серьезным недостатком кода Морзе.
Код Бодо более удобен, так как он является равномерным и содержит пять элементов в каждой комбинации.
Для уменьшения влияния помех в отдельных разрядах при передаче цифровых данных используется код Грея, соседние комбинации в котором отличаются только в одном разряде. Такие коды широко применяют при передаче результатов телеизмерений.
Двоично-десятичные непомехозащищенные коды нашли применение в системах передачи данных и вычислительной технике. В этих кодах каждый десятичный разряд представляется четырехразрядной комбинацией двоичного кода. Например, цифра 1 представляется как 0001, а цифра 9 — как 1001. Нетрудно заметить, что запись многоразрядных десятичных цифр двоично-десятичным кодом поучается весьма громоздкой. Для сокращения числа разрядов используют различные приемы.
Помехозащищенные коды предполагают, что из множества
различных слов (комбинаций) для использования выбраны только такие, для которых . Выбор такого подпространства с нужными свойствами из пространства сигналов представляет собой задачу выбора кода, оптимального по какому-либо определенному критерию. Чаще всего таким критерием является именно кодовое расстояние dпри ограничениях на число разрядов п и т. Широко используются следующие постановки задачи:выбрать из множества
заданное число М комбинаций с максимально возможным кодовым расстоянием d;выбрать из множества максимальное число комбинаций
с заданным кодовым расстоянием d;найти такой оператор, который однозначно трансформирует m-значные комбинации в п-значные ( ) и обеспечивает максимальное кодовое расстояние для данного вида преобразований.
Наиболее широко используются в телемеханических системах коды, получаемые в результате линейных преобразований m -значных комбинаций в п-значные ( ), называемые поэтому линейными.
Линейное преобразование в пространстве Xобладает следующими свойствами:
т.е.
где:
- произвольные векторы из пространства X; произвольные скалярные величины.Множество всех линейных преобразований некоторого линейного пространства само является линейным пространством, в котором определены векторное сложение и умножение на скаляр:
для всех х X.
Операция сложения схемно легко реализуется в виде параллельного соединения, а умножение — последовательным соединением соответствующих блоков, выражающих указанные операторы.
Линейные коды с избыточностью (корректирующие коды) строятся добавлением к каждой m-значной комбинации исходного кода k проверочных символов, выбираемых по определенному правилу (линейной форме).
Комбинации
корректирующих кодов в общем виде записываются следующим образом: