Студопедия
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Двочное неравномерное кодирование без использования разделителей

Читайте также:
  1. A)& Кодированием
  2. II. Оценка эффективности использования основных средств
  3. Альтернативные затраты (издержки) затраты, связанные с невозможностью наилучшего использования ресурсов.
  4. Анализ и оценка влияния использования труда на себестоимость продукции.
  5. Анализ использования прибыли
  6. Анализ использования прибыли
  7. Анализ использования производственной мощности
  8. Анализ использования трудовых ресурсов 2013 году
  9. Анализ лучшего и наиболее эффективного использования.
  10. Анализ наиболее эффективного использования.

Условие Фано:

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

 

Например, если имеется код 110, то уже не могут использоваться колы 1, 11, 1101, 110101 и пр.

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

Рассмотрим пример:

Пусть имеется таблица префиксных кодов:

 

а л ь з у ы
           

 

Требуется декодировать сообщение: 00100010000111010101110000110.

Декодирование производится циклическим повторением следующих действий.

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

2. Сравнить рабочее кодовое слово с кодовой таблицей; если совпадения нет, перейти к шагу 1.

3. Декодировать рабочее кодовое слово, очистить его.

4. Проверить, имеются ли ещё знаки в сообщении; если «да», перейти к шагу 1.

 

Применение этого алгоритма даёт:

 

Шаг Рабочее слово Текущее сообщение Распознанный знак Декодированное сообщение
  пусто 00100010000111010101110000110 - -
    0100010000111010101110000110 нет  
    100010000111010101110000110 м м
    00010000111010101110000110 нет м
    0010000111010101110000110 а ма
    010000111010101110000110 нет ма
    10000111010101110000110 м мам
       
         

 

Проведя процедуру до конца, получим сообщение: «мама мыла раму».

Таким образом, использование префиксного кодирования позволяет делать сообщение более коротким, поскольку нет необходимости передавать разделители знаков.

Однако условие Фано не устанавливает способа формирования префиксного кода и, в частности, наилучшего из возможных.

Способ оптимального префиксного двоичного кодирования был предложен Д. Хаффманом. Метод Хаффмана и его модификация – метод адаптивного кодирования (динамическое кодирование Хаффмана) - нашли широчайшее применение в программах-архиваторах, программах резервного копирования файлов и дисков, в сисиемах сжатия информации в модемах и факсах.

Теоретически имеется огромная возможность для сжатия текста (для английского текста – 67 %). Текстовый файл может быть теоретически быть сжат до размера, составляющего одну треть от первоначального. Однако, чтобы достигнуть этих результатов необходимо использовать сложный процесс кодирования и декодирования. Само по себе кодирование по алгоритму Хаффмана не позволит нам продвинуться значительно вперёд, поскольку даже кодирование 272 =729 пар букв даёт нам всего лишь скромную компрессию по сравнению с тем, что возможно теоретически.

 

 




Дата добавления: 2014-12-19; просмотров: 132 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2025 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав