статьиGNU Free Documentation License материалы взяты из Википедии Статья была изменена. Оригинал статьи.

Набор символов

Материал из Энциклопедии в свободной энциклопедии
Перейти к: навигация, поиск

Набор символов (англ. character set) в таблица, задающая кодировку конечного множества символов алфавита (обычно элементов текста: букв, цифр, знаков препинания). Такая таблица сопоставляет каждому символу последовательность длиной в один или несколько символов другого алфавита (точек и тире в коде Mорзе, сигнальных флагов на флоте, нулей и единиц (битов) в компьютере).

Содержание

[править] Набор символов в компьютере

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

Хотя термин «набор символов» (англ. character set, charset), узаконенный интернет-стандартом RFC 2278, сейчас является, пожалуй, наиболее авторитетным, предшествовавший ему термин «кодировка» (англ. encoding) по-прежнему используется в качестве синонима, в частности, в языках программирования Java[1], Perl[2] и XSLT[3], а также в HTML[4].

Нередко также вместо термина «набор символов» неправильно употребляют термин «кодовая страница», означающий на самом деле частный случай набора символов с однобайтным кодированием.

В настоящее время в основном используются кодировки трёх типов: совместимые с ASCII, совместимые с EBCDIC и основанные на Юникоде 16-битные, с подавляющим преобладанием первых. Представление UTF-8 Юникода совместимо с ASCII. Кодировки на базе EBCDIC (например, ДКОИ-8) используются только на некоторых мэйнфреймах. Первоначально в каждой операционной системе использовался один набор символов. Теперь используемые наборы символов стандартизованы[5], зависят от типа операционной системы лишь по традиции и устанавливаются согласно локали.

В Энциклопедии и других проектах Фонда Энцикломедиа используется Юникод UTF-8.

[править] Автоматическое распознавание кодировок

Использование множества кодировок в современном ПО создаёт много неудобств не только программистам, но и пользователям. Согласно одной точке зрения, справиться с кракозябрами можно, если программы будут автоматически распознавать кодировку входящего текста.

Для однобайтных кодировок можно учитывать тот факт, что частота использования разных букв сильно различается (например, в русском часто используется «о», но редко «ъ»). Поэтому, зная язык текста, можно легко выбрать кодировку, в которой частота байтов лучше соответствует частоте букв данного языка.

Альтернативная точка зрения считает подобные эвристические алгоритмы определения кодировки текста вредными, поскольку современные информационные технологии располагают средствами недвусмысленно сопоставить тексту положенную ему кодовую страницу (см., например, MIME). Широкое же распространение эвристических анализаторов поощряет использование некачественных программ создания текстовых данных, нарушающих стандарты.

[править] Распространенные кодировки

[править] См. также

[править] Примечания

Кодировки символов
Основы алфавит текстфайл данные ) набор символов конверсия
Исторические кодировки Докомп.: семафорная (Макарова) Морзе Бодо МТК-2 Комп.: 6 бит УПП RADIX-50 EBCDICДКОИ-8 ) КОИ-7 ISO 646
совре-
менное
8-битное
представ-
ление
символы ASCIIуправляющие печатные ) не-ASCIIпсевдографика )
8бит. код.стр. Разные    Кириллица: КОИ-8 ГОСТ 19768-87 MacCyrillic
ISO 8859  1(лат.) 2 3 4 5(кир.) 6 7 8 9 10 11 12 13 14 15(в‚) 16
Windows 1250 1251(кир.) 1252 1253 1254 1255 1256 1257 1258WGL4
IBM&DOS 437 850 852 855 866 «альт.»МИК ) ( НИИ ЭВМ )
Много-
байтные
Традиционные  DBCSGB2312 ) HTML
Unicode  UTF-16 UTF-8 список символовкириллица )
Связанные
темы 
интерфейс пользователя раскладка клавиатуры локаль перевод строки шрифт кракозябры транслит нестандартные шрифты текст как изображение Утилиты: iconv recode
Пространства имён

Варианты
Просмотры
Действия