Кодирование данных двоичным кодом



Кодированием называется процесс преобразования одного набора символов в другой набор символов.

Длиной кода называют количество знаков, которое используется при кодировании.

Одно и то же сообщение можно закодировать разными способами, то есть выразить на разных языках. В процессе развития человеческого общества люди выработали большое число языков кодирования. Языки делятся на разговорные (естественные) и формальные. Естественные языки носят национальный характер. Формальные языки чаще всего относятся к специальной области человеческой деятельности (например, азбука Морзе или язык флажков на флоте).

Для представления информации в вычислительной технике, в устройствах автоматики и связи в большинстве случаев используется двоичная система счисления. Следовательно, все используемые данные должны быть преобразованы в двоичный код. Двоичное кодирование – это представление данных двоичным алфавитом {0,1}.

Одним битом можно закодировать два значения: 1 и 0.

Двумя битами можно закодировать 4 значения: 00, 01, 10, 11.

Тремя битами можно закодировать 8 значений.

Используя 1 байт можно закодировать 28 = 256 различных значений.

Количество возможных значений определяется по формуле

N=2m,

где N – количество кодируемых значений;

m – разрядность двоичного кодирования, принятая в данной системе.

Кодирование текста

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

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

В кодовой таблице ASCII (American Standard Code for Information Interchange – американский код обмена информацией) для кодирования символа используется один байт. Первая часть кодовой таблицы (базовая, коды с 0 до 127) стандартизована, она соответствует использовавшемуся раньше 7-битному коду ASCII. Код ASCII ввёл американский институт стандартизации ANSI. В этой таблице размещаются управляющие символы, прописные и строчные буквы латинского алфавита, цифры от 0 до 9, знаки препинания, символы арифметических операций и некоторые специальные символы.

Во второй части кодовой таблицы располагаются национальные алфавиты и символы псевдографики. Причём, даже в одной стране для второй половины таблицы могут использоваться разные кодировки. Так, в России было предложено и применялось несколько кодировок кириллицы: основная кодировка ГОСТа, альтернативная кодировка ГОСТа, модифицированная альтернативная кодировка ГОСТа, кодировка КОИ-8. В операционной системе Windows используются кодовые страницы 1251 и 1252. Такой подход к кодировке кириллицы порождает проблемы при работе с текстами на русском языке.

Кодировка символов русского языка, известная как кодировка Windows-1251, была введена Microsoft, но, учитывая повсеместное использование операционных систем и других продуктов этой компании в России, она получила широкое распространение.

При использовании кодовой таблицы ASCII текстовые строки кодируются последовательностями однобайтных символов. Но алфавиты некоторых стран настолько велики, что закодировать все необходимые символы одним байтом не удаётся. В этих случаях используется представление символа одним, либо двумя байтами (doubl-byte character sets, DBCS). Сложность обработки при использовании такой двухбайтовой кодировки заключается в том, что часть символов представляется одним байтом, а часть – двумя. Нужны дополнительные проверки, чтобы определить полный код символа.

Стандарт Unicode (набор «широких» символов) был разработан фирмами Apple и Xerox в 1988 году. В 1991 г. Был создан консорциум по совершенствованию и внедрению Unicode, в который вошли ведущие в области разработки программного обеспечения фирмы, такие как Adobe, Apple, Borland, Digital, IBМ, Lotus, Novell, Sun, Xerox, Microsoft и другие. Строки в Unicode просты и логичны. Все символы в них представлены 16-битными значениями, по 2 байта на каждый. В них нет особых байтов, указывающих, чем является следующий байт: частью того же символа или новым символом.

Так как каждый символ является 16-битным числом, то Unicode позволяет кодировать свыше 65000 (65536) символов. В настоящее время кодовые позиции (code point – позиция знака в наборе символов) определены для ряда алфавитов, в том числе для кириллицы. Кроме того, в набор символов включено большое количество знаков препинания, математических и технических символов, стрелок и других специальных символов. Переход на систему Unicode долгое время сдерживался из-за недостатков ресурсов средств вычислительной техники. Во второй половине 90-х годов технические средства достигли необходимого уровня обеспечения ресурсами, и сегодня можно наблюдать постепенный перевод документов и программных средств на универсальную систему кодирования.


Дата добавления: 2015-12-21; просмотров: 14; Мы поможем в написании вашей работы!

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






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