Кодирование данных двоичным кодом
Кодированием называется процесс преобразования одного набора символов в другой набор символов.
Длиной кода называют количество знаков, которое используется при кодировании.
Одно и то же сообщение можно закодировать разными способами, то есть выразить на разных языках. В процессе развития человеческого общества люди выработали большое число языков кодирования. Языки делятся на разговорные (естественные) и формальные. Естественные языки носят национальный характер. Формальные языки чаще всего относятся к специальной области человеческой деятельности (например, азбука Морзе или язык флажков на флоте).
Для представления информации в вычислительной технике, в устройствах автоматики и связи в большинстве случаев используется двоичная система счисления. Следовательно, все используемые данные должны быть преобразованы в двоичный код. Двоичное кодирование – это представление данных двоичным алфавитом {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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!