P
pro·school.ru
Каталог школ

Сжатие данных и архиваторы

💻 Информатика · 9 класс

Что такое сжатие данных

Сжатие данных — это преобразование информации, при котором она занимает меньше места в памяти, но может быть восстановлена. Программы, которые сжимают файлы и собирают их в один архив, называют архиваторами.

Сжатие возможно потому, что в данных часто встречаются повторы и закономерности. Если их закодировать короче, объём уменьшится без потери смысла.

Два вида сжатия

ВидЧто происходитГде применяют
Без потерьДанные восстанавливаются точноТекст, программы, документы
С потерямиЧасть данных отбрасывается навсегдаФото, звук, видео

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

Простой пример сжатия

Один из приёмов — кодирование повторов. Длинную цепочку одинаковых символов заменяют на символ и число повторов.

исходная строка: AAAAAABBB записываем: А6В3 было 9 символов -> стало 4 символа

Так строка из девяти символов сжалась до четырёх. При распаковке по записи А6В3 легко восстановить исходную строку точно.

Коэффициент сжатия

Эффективность сжатия оценивают коэффициентом — отношением исходного размера к сжатому. Чем он больше, тем сильнее сжался файл.

исходный размер: 800 Кбайт сжатый размер: 200 Кбайт коэффициент = 800 / 200 = 4
Частая ошибка: думать, что любой файл можно сжать в разы. Уже сжатые файлы (например, картинки определённых форматов) почти не сжимаются повторно — повторов в них почти не осталось.

Зачем нужны архиваторы

  • Уменьшают размер файлов для хранения и пересылки.
  • Собирают много файлов в один архив — удобно передавать.
  • Позволяют защитить архив паролем.

Почему текст сжимается хорошо

В обычном тексте одни символы встречаются гораздо чаще других: например, пробел и распространённые буквы. Алгоритмы сжатия без потерь кодируют частые символы короткими цепочками бит, а редкие — длинными. В среднем запись становится короче. Именно так работают популярные алгоритмы сжатия текста. Чем больше в данных закономерностей и повторов, тем сильнее их удаётся сжать.

Сжатие с потерями подробнее

В фотографиях, музыке и видео человек не замечает мелких деталей: едва различимых оттенков или очень высоких звуков. Сжатие с потерями отбрасывает именно такую малозаметную информацию. Благодаря этому файлы уменьшаются в десятки раз, но восстановить исходные данные точь-в-точь уже нельзя.

СвойствоБез потерьС потерями
Точное восстановлениеДаНет
Степень сжатияУмереннаяОчень высокая
Где применяютДокументы, программыФото, звук, видео

Кратко о главном

  • Сжатие уменьшает объём данных за счёт устранения повторов.
  • Сжатие без потерь восстанавливает данные точно, с потерями — отбрасывает часть.
  • Текст и программы сжимают только без потерь.
  • Коэффициент сжатия — отношение исходного размера к сжатому.