Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_учебное пособие_.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
2.11 Mб
Скачать
  1. Кодирование символьной информации

Кодирование информации в ЭВМ - одна из задач теории кодирования. Теория кодирования - один из разделов теоретической информатики. Одна из задач - разработка принципов наиболее экономичного кодирования. Эта задача касается передачи, обработки, хранения информации. Частное ее решение – представление информации в компьютере.

Определение. Алфавит, в котором источник информации представляет сообщение, называется первичным.

Определение. Алфавит, в котором представлено сообщение после обработки в кодирующем устройстве, называется вторичным.

Кодирование – перевод сообщения из первичного алфавита во вторичный. Декодированиеоперация обратная кодированию.

Операции кодирования и декодирования называются обратимыми, если их последовательное применение обеспечит возврат к исходной информации без каких-либо ее потерь.

Утверждение. Пусть первичный алфавит А сост. из N знаков со средней информацией на знак IА , вторичный В – из М знаков со средней информацией на знак I В. Пусть сообщение в первичном алфавите содержит n знаков, а закодированное – m знаков. Если исходное сообщение содержит IS (A) информации, а закодированное If (B), то условие обратимости кодирования (то есть неисчезновения информации при кодировании) очевидно может быть записано так:

IS (A) ≤ If (B)

или

n* I (A) m* I (B)

То есть операция обратимого кодирования может увеличить количество информации в сообщении, но не может уменьшить ее.

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

К (А, В)=m/n

Тогда

К (А, В)≥ I (A) / I (B)

Минимально возможная длина кода:

Кmin (А, В)= I (A) / I (B) .

Теорема (первая теорема Шеннона). При отсутствии помех всегда возможен такой вариант кодирования сообщения, при котором средняя длина кода будет сколь угодно близкой к отношению средних информаций на знак первичного и вторичного алфавитов.

При кодировании длина кода может быть одинаковой для всех знаков первичного алфавита (код равномерный) или различной (неравномерный код). Коды могут строиться для отдельного знака первичного алфавита (алфавитное кодирование) или для их комбинаций (кодирование блоков, слов).

Пример. Представление символьной информации в компьютере.

Определим, какой должна быть длина кода. Компьютерный алфавит С включает 52 буквы латинского алфавита, 66 букв русского (прописные и строчные), цифры 0…9, 20 символов для обозначения знаков математических операций, препинания и т.д. В сумме получается 148 символов.

Вычислим длину кода: К (С, 2) ≥ log148 ≥ 7,21, но длина кода – целое число, следовательно, К (С,2) =8. Именно такой способ кодирования принят в компьютерных системах. Называют 8 бит =1 байт, а кодирование байтовым. Один байт соответствует количеству информации в одном знаке алфавита при их равновероятном распределении.

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

Таблица, в которой устанавливается однозначное соответствие между символами и их порядковыми номерами, называется таблицей кодировки.

С распространением ПК типа IBM PC международным стандартом стала таблица кодировки под названием American Standard Cod for Information Interchange – ASCII. Системы кодирования текстовых данных были разработаны и в других странах. Так, например, в СССР в этой области действовала система кодирования КОИ-7 и КОИ-8. Система, основанная на 16-разрядном кодировании символов, получила название универсальной Unicode. Шестнадцать разрядов позволяют обеспечить уникальные коды для 65536 различных символов – этого поля достаточно для размещения в одной таблице символов большинства языков планеты.