Стиснення даних


Модеми

Модем - це пристрій призначений для під'єднання комп'ютера до звичайної телефонної лінії. Назва походить від скорочення двох слів - МОдуляція та ДЕМодуляція.

Комп'ютер виробляє дискретні електричні сигнали, а по телефонних лініях інформація передається в аналоговій формі. Модеми виконують цифрово-аналогове й обернене перетворення. Модеми передають дані по звичайних, тобто комутованих, телефонних каналах зі швидкістю від 300 до 56 000 біт за секунду, а по орендованих каналах ця швидкість може бути і вищою. Окрім того, сучасні модеми здійснюють стиснення даних перед відправленням, і відповідно, реальна швидкість може перевищувати максимальну швидкість модему.

За конструктивним виконанням модеми бувають вбудованими і зовнішніми.

На вибір типу модему впливають наступні фактори:

· ціна: зовнішні модеми коштують дорожче, оскільки в ціну входить вартість корпусу та джерела живлення;

· наявність вільних портів/слотів: зовнішній модем під'єднується до послідовного порта. Внутрішній модем до слота на материнський платі. Якщо порти або слоти зайняті, потрібно вибрати один з пристроїв;

· зручність користування: на корпусі зовнішнього модему є індикатори, що відображають його стан, а також вимикач джерела живлення. Для встановлення зовнішнього модему не потрібно розбирати корпус комп'ютера.

Характерною особливістю більшості типів даних є їх надлишковість. Ступінь надлишковості даних залежить від типу даних. Наприклад, для відеоданих ступінь надлишковості в декілька разів більша ніж для графічних даних, а ступінь надлишковості графічних даних, у свою чергу, більша за ступінь надлишковості текстових даних. Іншим фактором, що впливає на ступінь надлишковості є прийнята система кодування. Прикладом систем кодування можуть бути звичайні мови спілкування, які є ні чим іншим, як системами кодування понять та ідей для висловлення думок. Так, встановлено, що кодування текстових даних за допомогою засобів української мови дає в середньому надлишковість на 20-25% більшу ніж кодування аналогічних даних засобами англійської мови.

Для людини надлишковість даних часто пов'язана з якістю інформації, оскільки надлишковість, як правило, покращує зрозумілість та сприйняття інформації. Однак, коли мова йде про зберігання та передачу інформації засобами комп'ютерної техніки, то надлишковість відіграє негативну роль, оскільки вона приводить до зростання вартості зберігання та передачі інформації.Коли методи стиснення даних застосовуються до готових файлів, то часто замість терміну "стиснення даних" вживають термін "архівування даних",стиснений варіант даних називають архівом, а програмні засоби, що реалізують методи стиснення називаються архіваторами.

В залежності від того, в якому об'єкті розміщені дані, що підлягають стисненню розрізняють:

1. Стиснення (архівування) файлів.

2. Стиснення (архівування) папок.

3. Стиснення (ущільнення) дисків.

Існує багато практичних алгоритмів стиснення даних, але всі вони базуються на трьох теоретичних способах зменшення надлишковості даних.Перший спосіб полягає в зміні вмісту даних, другий - у зміні структури даних, а третій - в одночасній зміні як структури, так і вмісту даних.

Якщо при стисненні даних відбувається зміна їх вмісту, то метод стиснення є незворотнім,тобто при відновленні (розархівуванні) даних з архіву не відбувається повне відновлення інформації. Такі методи часто називаються методами стиснення з регульованими втратами інформації.

Якщо при стисненні даних відбувається тільки зміна структури даних, то метод стиснення є зворотнім. У цьому випадкові з архіву можна відновити інформацію повністю. Зворотні методи стиснення можна застосовувати до будь-яких типів даних, але вони дають менший ступінь стиснення у порівнянні з незворотними методами стиснення. Приклади форматів стиснення без втрати інформації: GIF (Graphics Interchange Format), TIFF (Tagged Image File Format) - для графічних даних; AVI - для відеоданих; ZIP, ARJ, RAR, CAB, LH - для довільних типів даних.

Три теоретичних алгоритми:

· алгоритм RLE (Run Length Encoding);

· алгоритми групи KWE(KeyWord Encoding);

· алгоритм Хафмана.