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



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

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

Каждому символу такого алфавита ставится в соответствие уникальный десятичный код от 0 до 255, а каждому десятичному коду соответствует 8-разрядный двоичный код от 00000000 до 11111111. Таким образом, компьютер различает символы по их коду.

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

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

Каждая кодировка задается своей кодовой таблицей. Одному и тому же двоичному коду в различных кодировках соответ­ствуют различные символы.

Для того чтобы стало возможным чтение и редактирование текста, набранного в другой кодировке, используются программы перекодирования русского текста. Некоторые текстовые редакторы (например, MS Word и др.) содержат встроенные программы-конверторы, позволяющие читать текст в различных кодировках.

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

Кодовая 8-ми битная таблица состоит из двух частей: стандартная кодировка и национальная кодировка. Стандартными в этой таблице кодов ASCII являются только первые 128 символов, т. е. символы с номерами от нуля (двоичный код 00000000) до 127 (01111111). Сюда входят буквы латинского алфавита, цифры, знаки препинания, скобки и некоторые другие символы. Остальные 128 кодов, начиная со 128 (двоичный код 10000000) и кончая 255 (11111111), используются для кодировки букв национальных алфавитов, символов псевдографики и научных символов.

Одним из первых стандартов кодирования русских букв на компьютерах был КОИ8 (код обмена информацией, 8-битный). Эта кодировка применялась еще в 70-е годы на компьютерах серии ЕС ЭВМ. Операционная система MS DOS использовала кодировку СР866.

Наиболее распространенной в настоящее время является кодировка MS Windows, которая обозначается как СР1251, или Windows 1251.

В настоящее время все большее число программ поддерживает стандарт Unicode, который позволяет кодировать практически все языки и диалекты жителей Земли. Этот стандарт отводит на каждый символ не один байт, а два (16 бит), поэтому с его помощью можно закодировать 65536 различных символов (65536 = 216).

Стандарт предложен в 1991 году некоммерческой организацией «Консорциум Юникода» (англ. Unicode Consortium, Unicode Inc.). Применение этого стандарта позволяет закодировать очень большое число символов из разных письменностей: в документах Unicode могут соседствовать китайские иероглифы, математические символы, буквы греческого алфавита, латиницы и кириллицы, при этом становится ненужным переключение кодовых страниц.

Стандарт состоит из двух основных разделов: универсальный набор символов (англ. UCS, universal character set) и семейство кодировок (англ. UTF, Unicode transformation format). Универсальный набор символов задаёт однозначное соответствие символов кодам — элементам кодового пространства, представляющим неотрицательные целые числа. Семейство кодировок определяет машинное представление последовательности кодов UCS.

Unicode это именно стандарт, а не кодировка — сам по себе Юникод не определяет, как символы будут сохраняться на жестком диске или передаваться по сети. Он лишь определяет связь между символом и некоторым числом, а формат, согласно с которым эти числа будут превращаться в байты, определяется Юникод-кодировками (например, UTF-8 или UTF-16).

 


Дата добавления: 2018-09-22; просмотров: 315; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!