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

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

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

Кодирование – это…

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

За счет кодирования можно обеспечить символьным элементам:

  • хранение;
  • передачу;
  • преобразование посредством компьютеров или иных цифровых современных устройств.

Числовые значения, формирующие кодировку, – это кодовые точки. В совокупности они образуют пространство кода или кодовую страницу. Это сочетание также носит название таблицы символов.

Термины и связанные определения

При изучении кодов символов необходимо запомнить несколько ключевых определений и понятий. Это поможет быстрее разобраться в выбранном направлении:

  1. Знак препинания – минимальная единица текста, наделенная тем или иным смысловым значением.
  2. Набор символов – совокупность элементов, используемых для представления текста. В качестве примера можно привести латинский или греческий алфавит.
  3. Кодированный символьный набор – набор символов, который преобразован в набор уникальных чисел (кодов). Исторически сложилось так, что этот компонент называется кодовой страницей.
  4. Набор символов – совокупность символьных компонентов, которые могут быть представлены определенным набором кодированных символов. Этот элемент бывает закрытым – в него не допускаются никакие изменения без формирования нового стандарта. Также набор символов бывает открытый. Он допускает разнообразные дополнения.
  5. Кодовая точка – значение или позиция символа в кодировке набора символов.
  6. Кодовое пространство – диапазон числовых значений (кодов), задаваемых набором кодируемых символов.
  7. Кодовая единица – минимальная комбинация битов, которая может представлять собой символ в символьной кодировке. В информатике этим термином характеризуют размер слова в кодировке.

Теперь можно более подробно рассмотреть варианты кодов, используемых для представления печатных элементов в современных компьютерах.

ASCII

ASCII или American Standard Code for Information Interchange – это американский стандартный код информационного обмена. Произносится как «Аски».

Он был разработан в 1963 году. ASCII до сих пор используется для работы с кодами в компьютерах, хоть и не слишком часто. 

Данный «код» представляет собой кодировку интерпретации:

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

Изначально код создавался 7-битным. С его развитием каждый элемент стал храниться в 8 битах. Старший бит всегда установлен в 0. Теперь распространена 8-битная ASCII. В компьютерах чаще всего используются расширения «Аски» с задействованной второй половиной байта.

У ASCII есть вариант без национальных составляющих. Он называется US-ASCII. Всего в рассматриваемой кодировке представлено 128 символьных элемента. Для каждого устанавливается свой код интерпретации. В состав ASCII сейчас входят не только ранее перечисленные компоненты, но и:

  • математические символы;
  • арабские цифры;
  • заглавные и строчные буквы латинского алфавита;
  • 32 управляющих символьных записи.

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

Символьные кодировки: описание и разновидности

Выше можно увидеть, как выглядит таблица ASCII.

Расширенные ASCII

ASCII стала основой для развития разнообразных современных кодировок. Изначально в ней было всего 128 составляющих. В расширенной интерпретации получилось присвоить коды 256 элементам. Их можно было закодировать в одном байте информации. Это привело к возможности добавления в «Аски» букв национальных языков.

В качестве расширенного ASCII появилась CP866. В ней можно было присвоить коды русскому алфавиту. Ее верхняя часть полностью совпадала с базовой версией «Аски». Нижняя обладала несколько измененным видом. С помощью CP866 появилась возможность кодирования русских букв и псевдографики.

Символьные кодировки: описание и разновидности

CP866 распространялась компанией IBM. Для представления русского языка со временем появились другие кодировки расширенной интерпретации «Аски». В качестве примера можно привести KOI-8.

Символьные кодировки: описание и разновидности

Принцип работы с кодами здесь точно такой же, как и у CP866 – каждый элемент текста кодируется одним байтом. Первая половина совпадает с «Аски», поэтому выше представлена вторая ее часть. В KOI-8 кириллические буквы в таблице будут идти не в алфавитном порядке, как в CP866.

Windows-1251

Символы ASCII и некоторые ее расширенные версии уже изучены, но на них развитие таблиц кодов не закончилось. Дальнейший прогресс связан с тем, что графические операционные системы начали набирать огромную популярность. Псевдографика стала отходить на второй план. Со временем она вовсе пропала. Это привело к появлению целой группы расширенных версий «Аски», но без псевдографических составляющих. Они стали относиться к ANSI-кодировкам, разработанным американским институтом стандартизации. Наиболее популярным вариантом выступила кодировка Windows-1251.

Вместо псевдографики тут появились:

  • символы русской типографики (без знака ударения);
  • символы, используемые в близких к русскому славянских языках (белорусскому, украинскому и так далее).

Из-за такого обилия методов шифрования русского языка у производителей шрифтов и программного обеспечения стали возникать проблемы. Это привело к тому, что вместо положенного текста на экране начали появляться так называемые «кракозябры». Она символизирует о путанице кодов, используемых в тексте.

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

Unicode

Unicode (или «Юникод») – это современный стандарт представления символьных данных кодами. Он появился из-за того, что одним байтом информации невозможно описать алфавиты групп юго-восточной Азии (иероглифы). 

Это привело к тому, что в 1991 году некоммерческая организация «Консорциум Юникода» представила свою собственную разработку кодирования данных. Она получила название Unicode. Применение соответствующего стандарта позволяет закодировать очень много разнообразных элементов систем письменности:

  • математические компоненты;
  • буквы кириллицы, латиницы, греческого алфавита;
  • элементы музыкальной нотной нотации;
  • китайские и японские иероглифы.

При использовании «Юникода» переключаться между кодовыми таблицами не нужно. Этот стандарт включает в себя две части: универсальный символьный набор (UCS), а также семейство кодировок (UTF). В первом случае код выражается неотрицательным целым числом, записываемым в шестнадцатеричной форме с префиксом U+. Во втором случае определяются способы преобразования кодов для передачи в файлах или потоках.

UTF-32

Unicode предусматривает несколько интерпретаций. Каждая из них поддерживает свои ключевые особенности. Первой вариацией упомянутого стандарта стал UTF-32. Цифра в его названии указывает на количество бит, используемых для кодирования одного элемента.

32 бита – это 4 байта данных. Столько необходимо для одного единственного знака в универсальной кодировке UTF. Это привело к тому, что один и тот же файл с текстом, закодированный в ASCII и UTF-32, в последнем случае будет весить в 4 раза больше. Это плохо, зато пользователи смогли с таким методом шифровать миллиарды печатных элементов и знаков.

UTF-16

Количество доступных для шифрования знаков при помощи UTF-32 многим языкам не требовалось. Это только приводило к образованию очень «тяжелых» исходных файлов, а также приводило к увеличению объема интернет-трафика и хранимых сведений. Подобное расточительство в годы развития кодировок мало кто мог себе позволить.

Это привело к появлению новой вариации стандарта – UTF-16. Она стала настолько удачной, что была принята в качестве базового пространства всех знаков, которые сейчас используются в компьютерах. Для кодирования тут используются всего 2 байта.

Посмотреть соответствующую таблицу можно прямо в Windows. Для этого предстоит:

  1. Открыть «Пуск».
  2. Переключиться в «Программы»–«Стандартные».
  3. Выбрать пункт «Служебные».
  4. Кликнуть по «Таблица символов».
  5. Переключиться в «Дополнительные параметры» и включить Unicode.

Теперь у каждого шрифта можно посмотреть представление знаков в виде UTF-16. Соответствующие коды размещаются в левом нижнем углу окна. Они включают в себя 4 шестнадцатеричных цифры.

UTF-8

UTF-8 – это кодировка переменной длины. Еще один стандарт «Юникода», который стал результатом развития информационных технологий. Несмотря на 8 в названии, кодировка действительно имеет переменную длину. Каждый элемент в таблице может быть закодирован последовательностью длиной от 1 до 6 байт.

На практике в UTF-8 используются от 1 до 4 байт. Все, что находится за пределами этого диапазона, трудно представить. Латинские знаки тут кодируются в 1 байт, как в ASCII.

Если приложение не понимает Unicode, оно все равно сможет работать в UTF-8. Кириллица здесь кодируется в 2 байта, грузинский алфавит – в 3.

Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в Otus!