Архивация Файлов
Сжатие информации
Сжатие информации
- Сжатие информации Сжатие происходит за счет устранения избыточности кода, например, за счет упрощения кодов, исключения из них постоянных битов или представления повторяющихся символов в виде коэффициента повторения.
- Важнейшая характеристика процесса сжатия – коэффициент сжатия.
- Коэффициент сжатия – отношение объема исходного сообщения к объему сжатого.
Алгоритмы сжатия
Алгоритмы сжатия
- Равномерное сжатие с использованием кодов одной длины. Этот метод используется, если в записи сообщения присутствует небольшая часть алфавита.
- Сжатие с использованием кодов переменной длины. Сокращение объёма данных достигается за счёт замены часто встречающихся данных короткими кодовыми словами, а редких — длинными.
Сжатие с использованием кодов переменной длины
- этом случае возникает проблема отделения кодов символов друг от друга.
- Решить эту проблему позволяет условие, достаточное для однозначного декодирования сообщений с переменной длиной кодовых слов, условие Фано:
- Никакое кодовое слово не является началом другого кодового слова.
- По-другому условие Фано называют свойством префиксности, а код, удовлетворяющий этому условию, называют префиксным кодом.
Префиксные коды
- Чтобы понять, как строятся префиксные коды, рассмотрим, как построить ориентированный граф, определяющий этот код.
- Например, кодовые слова 00, 01, 10, 011, 100, 101, 1001, 1010, 1111, кодируют соответственно буквы: a, b, c, d, e, f, g, h, i.
Префиксные коды
- Построим граф этого кода.
- Из начальной вершины выходят две дуги, помеченные 0 и 1. Затем из конца каждой такой дуги входят новые дуги, помеченные 0 и 1 так, чтобы, идя по этим дугам от корня, читалось начало какого-либо кодового слова.
Алгоритм Хаффмана
Алгоритм Хаффмана
- Алгоритм Хаффмана — адаптивный алгоритм оптимального префиксного кодирования алфавита с минимальной избыточностью.
- Был разработан 1952 году аспирантом Массачусетского технологического института Дэвидом Хаффманом при написании им курсовой работы. В настоящее время используется во многих программах сжатия данных.
Алгоритм Хаффмана
- Символы исходного алфавита образуют вершины. Вес каждой вершины вес равен количеству вхождений данного символа в сжимаемое сообщение.
- Среди вершин выбираются две с наименьшими весами (если таких пар несколько, выбирается любая из них).
- Создается следующая вершина графа, из которой выходят две дуги к выбранным вершинам; одна дуга помечается цифрой 0, другая — символом 1. Вес созданной вершины равен сумме весов, выбранных на втором шаге вершин.
- К новым вершинам применяются шаги 2 и 3 до тех пор, пока не останется одна вершина с весом, равным сумме весов исходных символов.
Алгоритм Хаффмана
- Математики доказали, что среди алгоритмов, кодирующих каждый символ по отдельности и целым количеством бит, алгоритм Хаффмана обеспечивает наилучшее сжатие..
Rle сжатие
Rle сжатие
- Кодирование длин серий (англ. r un- l ength e ncoding , RLE ) или кодирование повторов — алгоритм сжатия данных, заменяющий повторяющиеся символы (серии) на один символ и число его повторов. Серией называется последовательность, состоящая из нескольких одинаковых символов. При кодировании (упаковке, сжатии) строка одинаковых символов, составляющих серию, заменяется строкой, содержащей сам повторяющийся символ и количество его повторов.
Rle сжатие
- Очевидно, что такое кодирование эффективно для данных, содержащих большое количество серий, например, для простых графических изображений, таких как иконкии графические рисунки. Однако это кодирование плохо подходит для изображений с плавным переходом тонов, таких как фотографии.
Rle сжатие
- Методом кодирования длин серий могут быть сжаты произвольные файлы с двоичными данными, поскольку спецификации на форматы файлов часто включают в себя повторяющиеся байты в области выравнивания данных. Тем не менее, современные системы сжатия (например, DEFLATE) чаще используют алгоритмы на основе LZ77, которые являются обобщением метода кодирования длин серий и оперируют с последовательностями символов вида «BWWBWWBWWBWW».
Архивация данных
Архивация данных
- Архивация - это упаковка (сжатие) файла или группы файлов с целью уменьшить место, занимаемое ими на диске.
Архиватор
- Архиватор– это служебная программа, предназначенная для компрессии файлов, т.е. для уменьшения их размера и занимаемого ими дискового пространства. Резервное копирование – создание архивированных копий файла или группы файлов.
Цели использования архиваторов:
- Создание резервных копий документов;
- Создание электронных архивов;
- Перенос данных из одного ПК на другой;
- Передача данных по сети.
Характеристики программ–архиваторов:
- степень сжатия файла (отношение размера исходного файла к размеру упакованного файла);
- скорость работы (время архивации);
- возможности программы.
ФУНКЦИИ ПРОГРАММ - АРХИВАТОРОВ:
- создавать архивы и извлекать из них файлы;
- добавлять, извлекать, или удалять из архива отдельные файлы или группы файлов;
- создавать самораспаковывающиеся архивы ;
- создавать многотомные архивы; устанавливать пароль на архив;
- уменьшить размер файла для отправки по e-mail.
Самораспаковывающиеся архивы
- Самораспаковывающиеся архивы или самораскрывающиеся архивы – это архивный файл, который будет иметь расширение .exe и запускается как обычная программа. Файлы из такого архива могут быть извлечены на любом компьютере путем запуска программы;
Архивация данных
К настоящему времени наибольшую популярность и «жизненное пространство» завоевали архиваторы
- WinZip
- WinRar.
Вывод
- Архивация данных полезна для уменьшения количества информации;
- Минусы архивации в потере некоторого количества данных при сжатии;
- Плюсы архивации простота в переносимости информации и ее хранении.