Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практическая работа № 3_2011.doc
Скачиваний:
8
Добавлен:
27.09.2019
Размер:
126.98 Кб
Скачать

I. Двоичное кодирование текстовой информации

В настоящее время большая часть пользователей, при помощи компьютера обрабатывает текстовую информацию, которая состоит из символов: букв, цифр, знаков препинания и др.

Главная идея кодирования текстовой информации в компьютере заключается в следующем. Текст состоит из отдельных символов, поэтому необходимо установить правила кодирования именно для символов. Общепринятый подход заключается в том, что определяется стандартная последовательность символов, и они нумеруются. Нумерация тех или иных объектов служит фундаментальным приемом кодирования информации в компьютере. В результате описанного подхода любой текстовый символ сохраняется в виде числа, которое является не чем иным, как его номером в общем стандартном списке символов (своеобразном алфавите). Например, для заглавной латинской буквы “A” принят десятичный номер 65, а для цифры “0” — 48. Считывая из памяти порядковый номер, компьютер изображает символ с этим номером, либо извлекая из таблицы его “битовый образ” (комбинацию светлых и темных точек) при растровом способе изображения, либо запуская процедуру рисования с нужным номером при векторном способе. Первый названный метод сейчас в основном представляет исторический интерес.

Кодирование символов с помощью номера в стандартной последовательности или, как часто говорят, в кодовой таблице очень компактно и удобно для компьютерной реализации.

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

Из описанного выше способа кодирования текстов становится понятно, что символы хранятся в памяти и обрабатываются процессором как обычные числа. Более того, не существует принципиальных признаков, которые позволили бы отличить в памяти код числа от кода символа; например, число 32 и пробел имеют абсолютно идентичный двоичный код. То же самое можно сказать и об остальных видах данных, включая даже программу их обработки: все виды информации в компьютере сводятся к числам

Традиционно, для того чтобы закодировать один символ используют количество информации равное 1 байту, а 1 байт = 8 бит. При помощи формулы, которая связывает между собой количество возможных событий N и количество информации I, можно вычислить, сколько различных символов можно закодировать (считая, что символы - это возможные события):

N = 2I = 28 = 256, где N - количество возможных событий, I - количество информации (формула 1.1), т. е. для представления текстовой информации можно использовать алфавит мощностью 256 символов.

Суть кодирования заключается в том, что каждому символу ставят в соответствие двоичный код от 00000000 до 11111111 или соответствующий ему десятичный код от 0 до 255.

Необходимо помнить, что в настоящее время для кодировки русских букв используют пять различных кодовых таблиц: КОИ - 8, СР1251, СР866, Мас, ISO, причем тексты, закодированные при помощи одной таблицы, не будут правильно отображаться в другой кодировке. Наглядно это можно представить в виде фрагмента объединенной таблицы кодировки символов. Одному и тому же двоичному коду ставится в соответствие различные символы.

Двоичный код

Десятичный код

КОИ8

СР1251

СР866

Мас

ISO

11000010

194

б

В

-

-

Т