Введение

Числовое значение, представляющее символ в кодированном наборе символов.

Кодовая точка, кодопозиция или позиция кода — это уникальное положение в квантованном n-мерном пространстве, которому присвоен семантический смысл. Иными словами, кодовая точка — это конкретная позиция в таблице, которой присвоено значение. Таблица имеет дискретные позиции (1, 2, 3, 4, но не дробные значения) и может быть одномерной (например, столбец), двумерной (как ячейки в электронной таблице), трехмерной (как листы в рабочей книге) и т. д., в любом количестве измерений. Кодовые точки используются во множестве формальных стандартов обработки информации и телекоммуникаций. Например, Рекомендация ITU-T T.35 содержит набор кодов стран для телекоммуникационного оборудования (первоначально факсов), позволяющий оборудованию указывать страну производства или эксплуатации. В T.35 Аргентина представлена кодовой точкой 0x07, Канада — 0x20, Гамбия — 0x41 и т. д.

В кодировании символов

Кодовые точки обычно используются в кодировании символов, где кодовая точка — это числовое значение, соответствующее определенному символу. В кодировании символов кодовые точки обычно представляют собой одну графему — как правило, букву, цифру, знак препинания или пробел, но иногда символы, управляющие символы или форматирование. Множество всех возможных кодовых точек в пределах заданной кодировки/набора символов составляет кодовое пространство этой кодировки. Например, схема кодирования символов ASCII включает 128 кодовых точек в диапазоне от 0hex до 7Fhex, расширенная ASCII включает 256 кодовых точек в диапазоне от 0hex до FFhex, а Unicode включает кодовые точки в диапазоне от 0hex до 10FFFFhex. Кодовое пространство Юникода разделено на семнадцать плоскостей (базовая многоязычная плоскость и 16 дополнительных плоскостей), каждая из которых содержит 65536 (= 216 × 32) кодовых точек. Таким образом, общий размер кодового пространства Юникода составляет 17 × 65536 = 1114112.

В Юникоде

Для Unicode конкретная последовательность битов называется кодовой единицей. В кодировке UCS-4 любая кодовая точка кодируется как 4-байтовое (октетное) двоичное число, в то время как в кодировке UTF-8 различные кодовые точки кодируются последовательностями длиной от одного до четырех байт, формируя самосинхронизирующийся код. Подробности см. в разделе «Сравнение кодировок Unicode». Кодовые точки обычно присваиваются абстрактным символам. Абстрактный символ – это не графический глиф, а единица текстовых данных. Однако кодовые точки также могут оставаться зарезервированными для будущего использования (большая часть кодового пространства Unicode не назначена) или получать другие специальные функции. Различие между кодовой точкой и соответствующим абстрактным символом не столь выражено в Unicode, как во многих других схемах кодирования, где для одного кодового пространства может существовать множество страниц кодов.

История

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