- •Методические указания
- •Содержание
- •Обработка растровой графики в Adobe PhotoShop
- •1. Цель работы
- •2. Основные теоретические сведения
- •2.1. Инструменты редактора Adobe Photoshop
- •2.2. Инструментальные палитры
- •2.3. Функции палитр
- •3. Порядок выполнения работы
- •4. Контрольные вопросы
- •Обработка векторной графики в Adobe Illustrator
- •1. Цель работы
- •2. Основные теоретические сведения
- •2.1. Основные понятия векторной графики
- •2.2. Инструменты векторного редактора Adobe Illustrator
- •3. Порядок выполнения работы
- •4. Контрольные вопросы
- •Обработка данных средствами электронных таблиц ms Excel 2000
- •1. Цель работы
- •2. Основные теоретические сведения
- •2.1. Вычисления в электронных таблицах
- •2.2. Копирование содержимого ячеек
- •2.3. Автоматизация ввода данных
- •2.4. Использование стандартных функций
- •2.5. Применение электронных таблиц для расчетов
- •2.5.1. Итоговые вычисления
- •2.5.2. Использование надстроек
- •2.6. Построение диаграмм и графиков
- •3. Порядок выполнения работы
- •4. Контрольные вопросы
- •Работа с базами данных в среде субд Microsoft Access 2000
- •1. Цель работы
- •2. Основные теоретические сведения.
- •2.1. Работа с таблицами
- •3. Порядок выполнения работы
- •4. Контрольные вопросы
- •Глобальная сеть Internet и создание Web-документов
- •1. Цель работы.
- •2. Основные теоретические сведения.
- •2.1. Ms Internet Explorer – средство просмотра гипертекста.
- •2.2. Создание Web-страницы.
- •3. Порядок выполнения работы.
- •4. Контрольные вопросы.
- •Приемы и методы работы со сжатыми файлами
- •1. Цель работы
- •2. Основные теоретические сведения
- •2.1. Объекты сжатия
- •2.2. Обратимость сжатия
- •2.3. Алгоритмы обратимых методов
- •2.3.1. Алгоритм rle
- •2.3.2. Алгоритм kwe
- •2.3.3. Алгоритм Хафмана
- •2.3.4. Синтетические алгоритмы
- •2.4. Программные средства сжатия данных
- •2.4.1. Базовые требования к диспетчерам архивов
- •2.4.2. Дополнительные требования к диспетчерам архивов
- •3. Порядок выполнения работы
- •4. Контрольные вопросы
- •Список литературы
- •450000, Уфа-центр, ул. К. Маркса, 12
2.3. Алгоритмы обратимых методов
При исследовании методов сжатия данных следует иметь в виду существование следующих доказанных теорем.
Для любой последовательности данных существует теоретический предел сжатия, который не может быть превышен без потери части информации.
Для любого алгоритма сжатия можно указать такую последовательность данных, для которой он обеспечит лучшую степень сжатия, чем другие методы.
Для любого алгоритма сжатия можно указать такую последовательность данных, для которой этот алгоритм вообще не позволит получить сжатия.
Таким образом, обсуждая различные методы сжатия, следует иметь в виду, что наивысшую эффективность они демонстрируют для данных разных типов и разных объемов.
Существует достаточно много обратимых методов сжатия данных, однако в их основе лежит сравнительно небольшое количество теоретических алгоритмов, представленных в таблице 6.1.
Таблица 6.1. Свойства алгоритмов сжатия
Алгоритм |
Выходная структура |
Сфера применения |
Примечание |
RLE (Run-Length Encoding) |
Список (вектор данных) |
Графические данные |
Эффективность алгоритма не зависит от объема данных |
KWE (Keyword Encoding) |
Таблица данных (словарь) |
Текстовые данные |
Эффективен для массивов большого объема |
Алгоритм Хафмана |
Иерархическая структура (дерево кодировки) |
Любые данные |
Эффективен для массивов большого объема |
2.3.1. Алгоритм rle
В основу алгоритмов RLE положен принцип выявления повторяющихся последовательностей данных и замены их простой структурой, в которой указывается код данных и коэффициент повтора.
Например, для последовательности: 0; 0; 0; 127; 127; 0; 255; 255; 255; 255 (всего 10 байтов) образуется следующий вектор:
Значение |
Коэффициент повтора |
0 |
3 |
127 |
2 |
0 |
1 |
255 |
4 |
При записи в строку он имеет вид:
0; 3; 127; 2; 0; 1; 255; 4 (всего 8 байтов). В данном примере коэффициент сжатия равен 8/10 (80 %). Программные реализации алгоритмов RLE отличаются простотой, высокой скоростью работы, но в среднем обеспечивают недостаточное сжатие. Наилучшими объектами для данного алгоритма являются графические файлы, в которых большие одноцветные участки изображения кодируются длинными последовательностями одинаковых байтов. Этот метод также может давать заметный выигрыш на некоторых типах файлов баз данных, имеющих таблицы с фиксированной длиной полей. Для текстовых данных методы RLE, как правило, неэффективны.
2.3.2. Алгоритм kwe
В основу алгоритмов кодирования по ключевым словам (Keyword Encoding) положено кодирование лексических единиц исходного документа группами байтов фиксированной длины. Примером лексической единицы может служить слов (последовательность символов, справа и слева ограниченная пробелами или символами конца абзаца). Результат кодирования сводится в таблицу, которая прикладывается к результирующему коду и представляет собой словарь. Обычно для англоязычных текстов принято использовать двухбайтную кодировку слов. Образующиеся при этом пары байтов называют токенами.
Эффективность данного метода существенно зависит от длины документа, поскольку из-за необходимости прикладывать к архиву словарь длина кратких документов не только не уменьшается, но даже возрастает.
Данный алгоритм наиболее эффективен для англоязычных текстовых документов и файлов баз данных. Для русскоязычных документов, отличающихся увеличенной длиной слов и большим количеством приставок, суффиксов и окончаний не всегда удается ограничиться двухбайтными токенами и эффективность метода заметно снижается.