1.2.3. Двоичное кодирование текстовой информации.
Различные кодировки кириллицы
Начиная с конца 60-х годов компьютеры все
больше стали использоваться для обработки текстовой
информации, и в настоящее время основная доля персональных
компьютеров в мире (и большая часть времени) занята обработкой
именно текстовой информации. Традиционно для кодирования
одного символа используется количество информации, равное 1
байту, т. е. I = 1 байт = 8 бит. Если рассматривать символы
как возможные события, то можно вычислить, какое количество
различных символов можно закодировать: N = 2I =
28 = 256 возможных событий, то есть возможных
символов.
Такое количество символов вполне достаточно
для представления текстовой информации, включая прописные и
заглавные буквы русского и латинского алфавита, цифры, знаки,
графические символы и т. д.
Кодирование заключается в том, что каждому
символу ставится в соответствие уникальный десятичный код от 0
до 255 или соответствующий ему двоичный код от 00000000 до
11111111.
Таким образом, человек различает символы по
их начертанию, а компьютер ― по их коду. При вводе в компьютер
текстовой информации происходит ее двоичное кодирование,
изображение символа преобразуется в его двоичный код.
Пользователь нажимает на клавиатуре клавишу с символом ― и в
компьютер поступает определенная последовательность из восьми
электрических импульсов (двоичный код символа). Код символа
хранится в оперативной памяти компьютера, где занимает одну
ячейку.
В процессе вывода символа на экран компьютера
производится обратный процесс ― декодирование, т.е.
преобразование кода символа в его изображение.
Важно, что присвоение символу конкретного
кода ― это вопрос соглашения, которое фиксируется в кодовой
таблице. Первые 33 кода (с 0 по 32) обозначают не символы, а
операции (перевод строки, ввод пробела и т. д.)
Коды с 33 по 127 ― интернациональные и
соответствуют символам латинского алфавита, цифрам, знакам
арифметических операций и знакам препинания. Коды с 128 по 255
являются национальными, т.е. в национальных кодировках одному
и тому же коду отвечают различные символы.
К сожалению, в настоящее время существует
пять различных кодовых таблиц для русских букв (КОИ-8, СР1251,
СР866, Мас, ISO), поэтому тексты, созданные в одной кодировке,
не будут правильно отображаться в другой. Каждая кодировка
задается своей собственной кодовой таблицей. Одному и тому же
двоичному коду в различных кодировках поставлены в
соответствие различные символы. Примеры кодовых вариантов
представлены втаб. 1.2.2, по которой можно увидеть, что
одному и тому же русскому символу соответствуют разные
числа.
Таблица 1.2.2.
Кодировки символов
Двоичный код |
Десятичный код |
КОИ8 |
СР1251 |
СР866 |
Мас |
ISO |
00000000 |
0 |
|
00001101 |
13 |
перевод строки
(клавиша Enter) |
00100000 |
32 |
пробел |
00100001 |
33 |
! |
01111111 |
127 |
D |
10000000 |
128 |
|
ъ |
А |
А' |
k |
11000010 |
194 |
б |
В |
- |
- |
Т |
11011101 |
221 |
щ |
э |
_ |
Ё |
н |
11111111 |
255 |
ь |
я |
нераз. пробел |
нераз. пробел |
п |
В последнее время появился новый
международный стандарт Unicode, который отводит на каждый
символ не один байт, а два, и потому с его помощью можно
закодировать не 256 символов, а N = 216 = 65536
различных символов. Эту кодировку поддерживают последние
версии платформы Microsoft Windows&Office (начиная с 1997
года).
Для того чтобы представить символ в ПК
необходимо:
-
По таблице ASCII (принятая
стандартная таблица кодирования символа) определить
порядковый номер символа.
-
Порядковый номер из десятичной
системы счисления перевести в двоичную систему
счисления.
-
Каждому разряду назначить
соответствующий уровень напряжения.
Представить слово Hit в форме для записи в
ячейки памяти ПК.
Таким образом, получается, что для
кодирования слова Hit в памяти ПК необходимо занять 3 ячейки,
то есть 3 байта информации.
|