С ж а т и е без пот ери информации.
Эти методы сжатия нас
интересуют в первую очередь, поскольку именно их применяют при
передаче текстовых документов и программ, при выдаче выполненной
работы заказчику или при создании резервных копий информации,
хранящейся на компьютере.
Методы сжатия этого класса не могут допустить утрату
информации, поэтому они основаны только на устранении ее
избыточности, а информация имеет избыточность почти всегда
(правда, если до этого кто-то ее уже не уплотнил).
Рассмотрим такой пример. В международной кодировке символов
A SC II для кодирования любого
символа отводится одинаковое
количество битов
(8 ),
в то
Бремя
как всем давно и хорошо известно,
что наиболее часто встречающиеся символы имеет смысл кодировать
меньшим количеством знаков. Так, например, в "азбуке Морзе" буквы
Е и Т, которые встречаются часто, кодируются одним знаком
(соответственно это точки и тире). А такие редкие буквы, как Ю (.. - -)
и Ц (- . -), кодируются четырьмя знаками. Неэффективная кодировка -
основание для избыточности. Программы, выполняющие сжатие
информации, могут вводить свою кодировку (разную для разных
файлов) и приписывать к сжатому файлу некую таблицу (словарь), из
которой распаковывающая программа узнает, как в данном файле
закодированы те или иные символы или их группы. Алгоритмы,
основанные на перекодировании информации, называют алгоритмами
Хафмана.
Наличие повторяющихся фрагментов - следующее основание для
избыточности. В текстах это встречается редко, но в таблицах и в
графиках повторение кодов — обычное явление. Так, например, если
число 0 повторяется двадцать раз подряд, то нет смысла ставить
двадцать нулевых байтов. Вместо них ставят один
ноль и
коэффициент 20.
какие алгоритмы, основанные на выявлении
повторов, называют м л Ь и Rb,E (Run Length Encoding).
2 . 9 О
с н о в н ы е
ф о р м а т ы
у п а к о в к и
д а н н ы х
Существует неско^ькстаиесятков различных форматов упаковки.
Каждая программа, выполняющая сжатие данных, использует свой
формат, но наиболее часто встречаются форматы .ZIP, .ARJ, .RAR.
При упаковке данных не стоит "разбрасываться" и применять
много архиваторов. Достаточно сосредоточиться на одной-двух
программах и настойчиво их эксплуатировать, хотя прежде чем
передавать сжатый файл постороннему лицу, стоит убедиться, что у
него есть средства для его распаковки. В случае необходимости можно
договориться
об
используемом
архиваторе,
а лучше
создать
самораспаковывающийся архив. Это позволяет договориться даже с
человеком, который вообще ничего об архиваторах не знает.
Для распаковки данных желательно иметь наиболее полный набор
программ, поскольку нельзя заранее предсказать, с каким форматом
придется иметь дело.
Do'stlaringiz bilan baham: |