|
Добро пожаловать в
пользовательский раздел сайта! |
|
Библиотека
: Информатика : Информация,
информационное процессы:
Представление текстов в ЭВМ. |
Для кодирования
символьной или текстовой информации
применяются различные системы, существует множество
кодировочных таблиц. Для представления текстовой
информации в компьютере используется алфавит, состоящий
из 256 символов. Поскольку 256 является восьмой степенью
двойки (256=2*2*2*2*2*2*2*2), то это означает, что
каждый символ можно представить последовательностью из
восьми бит, начиная с комбинации 00000000 и заканчивая
комбинацией 11111111. Таким образом, информационный вес
одного символа равен одному байту.
Все символы компьютерного
алфавита пронумерованы от 0 до 255 и собраны в таблицу
кодировки ASCII (American
Standart Code for Information Interchange –
Американский стандартный код для информационного
обмена), в которой каждому символу поставлен в
соответствие двоичный код.
Первая часть таблицы, 128
символов с кодами от 00000000 до 01111111, отведена под
общепринятые символы, используемые во всех странах мира
– латинские буквы, цифры, знаки препинания, поэтому на
практике обычно не бывает проблем с кодированием
англоязычных текстов.
Вторая часть таблицы, так
же включающая 128 символов, с кодами от 10000000 до
11111111, отведена под национальные символы, в России
это символы русского алфавита, в Греции - греческого.
Один байт как набор восьми
битов позволяет закодировать 256 символов, что вполне
достаточно для работы сразу с двумя обычными языками,
например английским и русским. При этом все коды
собираются в специальные таблицы, называемые
кодировочными. С их помощью производится преобразование
кода символа в его видимое представление на экране
монитора. В результате любой текст в памяти компьютера
представляется как последовательность байтов с кодами
символов.
В качестве примера
попробуем разобраться, как в компьютере будет
представлено слово «Hello»,
очевидно, что информационный вес этого слова равен 5
байтам.
01001000 01100101 01101100
01101100 01101111
|
Справедливости ради
необходимо отметить, что на сегодняшний день существует
пять различных вариантов кодировки русских букв (КОИ8,
СР1251, СР866, Мас, ISO),
поэтому тексты созданные в одной кодировке, не будут
правильно отображаться в другой.
В таблице кодировки
ASCII все символы записаны в
алфавитном порядке, цифры так же упорядочены по
возрастанию, такой порядок получил название принципа
последовательного кодирования алфавита. |
В наши дни большинство приложений, включая системы
электронной почты и
WEB-браузеры,
являются чисто 8-битными, то есть они могут показывать и
корректно воспринимать лишь 8-битные символы, согласно
стандарту ISO-8859-1.
Люди, живущие в разных странах, используют различные
символы для записи слов на своих родных языках. В мире
существует гораздо более 256 символов используемых для
представления текстовой информации (если учесть
кириллицу, арабский, китайский, японский, корейский и
тайский языки), а также появляются все новые и новые
символы. И это создает определенные проблемы для многих
пользователей:
Невозможно использовать символы различных наборов
кодировок в одном и том же документе.
Так как каждый текстовый документ использует свой
собственный набор кодировок, то возникают большие
трудности с автоматическим распознаванием текста.
Появляются новые символы (например: Евро), вследствие
чего приходится разрабатывать новые стандарты.
|
Решением этих проблем является принятие единого
международного набора кодировок, который называется
универсальным кодированием или Unicode.
Данная кодировка решает
пользовательские проблемы (см. выше), но создает новые,
технические проблемы: как пересылать символы в формате
Unicode, использую 8-битные байты?
Стандарт Unicode был разработан с целью создания единой
кодировки символов всех современных и многих древних
письменных языков. Каждый символ в этом стандарте
кодируется 16 битами, что позволяет ему охватить
несравненно большее количество символов, чем принятые
ранее 7- и 8-битовые кодировки. Еще одним важным
отличием Unicode от других систем кодировки является то,
что он не только приписывает каждому символу уникальный
код, но и определяет различные характеристики этого
символа, например:
тип символа (прописная буква, строчная буква, цифра,
знак препинания и т.д.);
атрибуты символа (отображение слева направо или справа
налево, пробел, разрыв строки и т.д.);
соответствующая прописная или строчная буква (для
строчных и прописных букв соответственно);
соответствующее числовое значение (для цифровых
символов).
Весь диапазон кодов от 0 до FFFF разбит на несколько
стандартных подмножеств, каждое из которых соответствует
либо алфавиту какого-то языка, либо группе специальных
символов, сходных по своим функциям. |
|
Предыдущая |
Содержание |
Следующая |
|
|
|
|
|
|