Крок тическая інформатика

Крок 11 Рівномірний алфавітний двійкове кодування. байтовий код.doc

Крок 11.
Теоретична інформатика. Кодування інформації в теорії Шеннона.
Рівномірний алфавітний двійкове кодування. байтовий код

На цьому кроці ми розглянемо рівномірний алфавітний двійкове кодування; байтовий код.

В цьому випадку двійкового коду первинного алфавіту будується ланцюжками рівної довжини, тобто з усіма знаками пов'язано однакову кількість інформації дорівнює I0. Передавати ознака кінця знака не потрібно, тому для визначення довжини кодової ланцюжка можна скористатися формулою: K (2) log2N. Приймальний пристрій просто відраховує обумовлене заздалегідь кількість елементарних сигналів і інтерпретує ланцюжок (встановлює, якого знаку вона відповідає). Правда, при цьому неприпустимі збої, наприклад, пропуск (непрочитані) одного елементарного сигналу призведе до зсуву всієї кодової послідовності і неправильної її інтерпретації; вирішується проблема шляхом синхронізації передачі або іншими способами. З іншого боку, застосування рівномірного коду виявляється одним із засобів контролю правильності передачі, оскільки факт надходження зайвого елементарного сигналу або, навпаки, надходження неповного коду відразу інтерпретується як помилка.

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

  • 262 = 52 букв латинського алфавіту (з урахуванням великих і малих);

  • 332 = 66 букв російського алфавіту;

  • цифри 0. 9 - всього 10;

  • знаки математичних операцій, знаки пунктуації, спецсимволи 20.

Отримуємо, що загальне число символів N 148. Тепер можна оцінити довжину кодової ланцюжка: K (2) log2148 7,21. Оскільки K (2) має бути цілим, очевидно, K (2) = 8. Саме такий спосіб кодування прийнятий в комп'ютерних системах: будь-якому символу ставиться у відповідність ланцюжок з 8 двійкових розрядів (8 біт). Такий ланцюжок отримала назву байт. а уявлення таким чином символів - байтовим кодуванням.

Байт поряд з бітом може використовуватися як одиниця вимірювання кількості інформації в повідомленні. Один байт відповідає кількості інформації в одному символі алфавіту при їх равновероятном розподілі. Цей спосіб вимірювання кількості інформації називається також об'ємним. Нехай є деяка повідомлення (послідовність знаків); оцінка кількості міститься в ньому інформації згідно розглянутому раніше вероятностному підходу (за допомогою формули Шеннона) дає Iвер. а об'ємна міра нехай дорівнює Iоб; співвідношення між цими величинами:

Саме байт прийнятий в якості одиниці вимірювання кількості інформації в міжнародній системі одиниць СІ. 1 байт = 8 біт. Поряд з байтом для вимірювання кількості інформації використовуються більші похідні одиниці:

Використання 8-бітних ланцюжків дозволяє закодувати 2 8 = 256 символів, що перевищує оцінене вище N і, отже, дає можливість вжити решту кодової таблиці для подання додаткових символів.

Однак недостатньо тільки домовитися про певну довжині коду. Ясно, що способів кодування, тобто варіантів зіставлення знакам первинного алфавіту восьмибітних ланцюжків, дуже багато. З цієї причини для сумісності технічних пристроїв і забезпечення можливості обміну інформацією між багатьма споживачами потрібне узгодження кодів. Подібне узгодження здійснюється у формі стандартизації кодових таблиць. Першим таким міжнародним стандартом, який застосовувався на великих обчислювальних машинах, був EBCDIC> (Extended Binary Coded Decimal Interchange Code) - "розширена двоичная кодування десяткового коду обміну". У персональних комп'ютерах і телекомунікаційних системах застосовується міжнародний байтовий код ASCII (American Standard Code for Information Interchange - "американський стандартний код обміну інформацією"). Він регламентує коди першої половини кодової таблиці (номери кодів від 0 до 127, тобто перший біт всіх кодів 0). У цю частину потрапляють коди великих і малих англійських літер, цифри, розділові знаки і математичних операцій, а також деякі керуючі коди (номери від 0 до 31). Нижче наведені деякі ASCII-коди:


Таблиця 1. ^ Деякі ASCII-коди Знак, клавіша

Схожі статті