Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Кузьмин Теория Информации.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
2.27 Mб
Скачать

Контрольные вопросы

  1. Как определить скорость создания информации дискретным источником без памяти?

  2. Какие коды называются простейшими, бесшумными?

  3. Какие коды называются неравномерными?

  4. Какие коды называются эффективными?

  5. Как определяется кодовое расстояние?

  6. Как определяется вес кодовой комбинации?

  7. По каким правилам проводится сложение двоичных чисел по модулю 2?

  8. Сформулируйте теоремы кодирования Шеннона.

  9. Что в теории информации принято называть верностью.

  10. Что называется пропускной способностью канала связи?

3. Простые (безызбыточные) коды

3.1. Натуральный двоичный код и код Грэя

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

Простые коды относятся к группе безызбыточных кодов, а по признаку помехоустойчивости их называют примитивными.

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

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

При кодировании натуральным двоичным кодом все сообщения (символы) нумеруются (каждому присваивается десятичный номер), а затем номер каждого сообщения (символа) представляется в двоичном коде (рис. 2).

Рис. 2. Принцип формирования НДК

По такому же принципу строится знакогенератор ПК, использующий рекомендации МККТТ. Для кодировки первых 127 символов (первая половина символов, соответствующая стандарту ASCII, одинаковая для всех IВМ – совместимых ПК) используется один байт восьмиразрядного двоичного кода (значение символов второго байта равно нулю). Например, символу «1» соответствует десятичный номер 49, код которого 00110001; символу «w» соответствует десятичный номер 119, код которого 01110111.

Очевидно, что НДК не является помехозащищенным и не дает никаких преимуществ при передаче информации, так как любые искажения символов при передаче по каналу связи приводят к ошибкам.

К простым равномерным кодам относят так называемые отраженные (рефлексные) двоичные коды, например код Грэя.

Код Грея получается из НДК следующим образом (рис. 3):

  • под двоичным числом в НДК записывается сдвинутое вправо на один разряд то же число, при этом младший разряд теряется;

  • проводится их поразрядное сложение по модулю 2.

Рис. 3. Перевод из НДК в код Грэя

Правила обратного перевода:

1. Цифра старшего разряда остается без изменения.

2. Каждая последующая цифра инвертируется столько раз, сколько единиц ей предшествует.

Особенности кода Грея:

1. Любые соседние кодовые комбинации отличаются только в одном разряде (см. рис. 3).

2. Смена значений элементов при переходе от комбинации к комбинации происходит в два раза реже, чем у НДК.

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

Код Грея по сравнению с НДК позволяет уменьшить ошибки неоднозначности считывания, а также ошибки, вызванные помехами при передаче информации по каналам связи. Обычно код Грэя используется в аналогово-цифровых преобразователях (АЦП) при формировании импульснокодомодулированных (ИКМ)

сигналов из непрерывных сообщений.

Код сложно преобразуется в ЦВМ, поэтому его преобразуют в НДК. Для передачи информации по каналам связи рассмотренные коды не применяются, так как плохо согласуются с каналами передачи данных и не обладают помехозащищенностью.

3.2. Стандартные Международные телеграфные коды

К стандартным международным телеграфным кодам (МТК) относят коды МТК–2 и МТК–5.

МТК–2 – это пятиэлементный (п = 5) двоичный (а = 2) равномерный (п = const) простой (d0 = 1) код, имеющий 25 = 32 кодовых комбинации, используемые полностью (безызбыточный код). Первые 26 комбинаций служат для передачи букв латинского алфавита, а 6 комбинаций (с 27-й по 32-ю) – для передачи функциональных сигналов «Пробел», «Возврат каретки», «Перевод строки» и др., а также регистров «Буквы латинские» и «Цифры», что позволяет передавать 52 графических символа. Появление в цифровом потоке кодового слова регистра, например регистра «Буквы латинские», означает, что до появления очередного кодового слова данного регистра все последующие слова являются закодированными буквами латинского алфавита (соответственно, для цифрового регистра - цифрами).

В русской версии кода МТК–2 имеется регистр «Буквы русские», который дополнительно позволяет передавать буквы русского алфавита. Поскольку русских букв больше, чем латинских, то для передачи части букв используется цифровой регистр, например, 6 – Э, 7 – Ш и т. д.

Такие важные функциональные команды, как «Понял», «Ждите» и некоторые другие из – за недостатка кодовых комбинаций передаются четырехкратной передачей одних и тех же символов, например: «++++» – конец телеграммы, «НННН» - конец сообщения и др.

Код МТК–5 позволяет передавать 128 комбинаций при одном регистре и 256 – при двух регистрах, т. е. имеет большие функциональные возможности по сравнению с кодом МТК–2. Указанные коды применяются для ввода информации с клавиатуры телеграфных аппаратов.

3.3. Задача неравномерного кодирования дискретных источников

Любой дискретный канал имеет присущую только ему пропускную способность С. Источник сообщений, в свою очередь, имеет определенную величину энтропии Н и производительность С'. Если С' ≤ С, то создаваемые данным источником сообщения можно передать по этому каналу. В противном случае передача невозможна без потери информации (первая теорема Шеннона).

Идеальным является вариант, когда в предлагаемом алфавите источника все сообщения равновероятны, так как в этом случае обеспечивается максимальная энтропия источника сообщений и, следовательно, потребуется канал связи с большей пропускной способностью, т. е. его ресурс будет использоваться эффективно. Однако реальные источники, как правило, формируют возможные сообщения с различными вероятностями, что определяет снижение энтропии сообщений.

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

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

В этом случае для кодирования используются неравномерные коды. Идея их формирования достаточно проста: чем больше априорная вероятность появления символа, тем более короткая комбинация ему соответствует, и наоборот, редко встречающиеся символы обозначаются длинными кодовыми комбинациями.

Интересна история создания неравномерного кода Морзе. Создатель этого кода фактически использовал статистические характеристики текстов. Он обратился в типографию, подсчитал количество литер, используемых при наборе текста, для каждой буквы и, исходя из этого, составил таблицу кодирования символов (почти оптимальный подход к формированию таблицы символов).

Сформулируем задачу статистического кодирования. Пусть имеется сообщение, записанное с помощью букв некоторого алфавита А = {1 ,2 , ..., N}, содержащего N символов источника. Назовем данный алфавит входным. Требуется произвести кодирование сообщения, т. е. указать правило, которое ставит в соответствие каждой букве алфавита источника определенную комбинацию из всего набора кодовых комбинаций кодирующего устройства (кодера). Для двоичного канала связи в роли этих символов выбираются «0» и «1», А = {0,1}.

Выбранный статистический код должен обеспечить решение следующих основных задач:

1. На передачу сообщения должно быть затрачено в среднем минимальное число нулей и единиц (кодовых комбинаций выходного алфавита), что позволит передать за единицу времени максимальное число сообщений.

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

Рассмотрим пример нескольких вариантов кодирования алфавита А: А = (1 , 2 , 3). Некоторые возможные коды двоичного алфавита для букв алфавита А представлены в табл. 1. Анализ табл. 1 показывает, что не все представленные коды однозначно декодируемы.

Таблица 1

А

Код 1

Код 2

Код 3

1

1

01

0

2

0

10

10

3

01

11

111

Пусть принята двоичная последовательность вида 0110110101. Возможны следующие варианты ее декодирования кодом 1:

  • 2, 1, 1, 2, 1, 1, …

  • 3, 1, 2, 1, 1, 2, … и т. д.

Пример показывает, что невозможно однозначное декодирование данного кода.

Если декодировать кодом 2, то получим следующий результат: 1, 2, 3, 2, …

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

Заметим, что код 3 также является однозначно декодируемым.

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

Код, обладающий тем свойством, что никакое более короткое слово не является началом другого более длинного слова кода, называют префиксным.