Кодовая страница () — это компьютерная кодировка символов, в которой каждый символ кодируется одним байтом. Байт, как правило, состоит из 8 битов, поэтому кодовая страница содержит не более 256 символов, чем обусловлена невозможность представления многоязычных текстов посредством какой-либо одной 8-битной кодовой страницы. Кроме того, часть символов используется как управляющие, из-за чего число печатных символов в кодовой странице редко превышает 223.
Исторически термин code page был введён корпорацией IBM; сменные кодовые страницы использовались для поддержки различных языков с алфавитными системами письма. В последнее время наблюдается путаница между термином «кодовая страница» и более общими понятиями набора и кодировки символов.
Кодовые страницы сегодня В настоящее время в основном используются кодовые страницы двух типов: совместимые с ASCII и совместимые с EBCDIC, с подавляющим преобладанием первых. В ASCII-совместимых кодовых страницах (так называемом ) нижняя половина кодовой таблицы (128 позиций —), как правило, полностью совпадает с ASCII, а верхняя половина (128 позиций —) используется для различных символов, не входящих в ASCII.
Для кодирования текстов на русском языке (то есть букв кириллицы) наиболее широко применяются следующие кодовые страницы: Windows-1251 — в операционных системах Windows; Варианты альтернативной кодировки — в операционных системах DOS, а также в консоли Windows (см. ниже); Семейство кодировок КОИ-8 — в Unix-подобных операционных системах (при ручной настройке пользователем); MacCyrillic — на компьютерах Macintosh.
Использование различных кодовых страниц создаёт много неудобств как для пользователей, так и для программистов. Например, при попытке прочесть текстовый файл, используя кодовую страницу, несовместимую с той, в которой он был создан, получается нечитаемый текст (так называемые ). В последние годы широкое распространение получил Юникод как альтернатива традиционным кодовым страницам.
В системе Microsoft Windows
В системах Microsoft Windows кодовые страницы являются важным компонентом локализации и определяются в ветви реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage.
Исторически (в системах Windows 3.x и Windows 9x) имелось два типа кодовых страниц: Кодовые страницы ANSI (, ключ реестра: ACP), также называемые Windows — «родные» кодовые страницы Windows. Содержат много символов типографики, но почти не содержат псевдографику по причине того, что предназначены для использования в графическом окружении. Впоследствии корпорация Microsoft признала, что название ANSI было использовано по недоразумению. К кодовым страницам ANSI относят, в частности, Windows-1252 и вышеупомянутую Windows-1251. Также к данному типу относят кодировки, некоторые кодовые позиции которых требуют второй (завершающий) байт для формирования символа, то есть использующие двухбайтовое представление некоторых символов, хотя они, строго говоря, являются кодировками с переменной длиной символа.
Кодовые страницы OEM (, ключ реестра: OEMCP) основаны на CP437 и содержат VGA-совместимую псевдографику. К кодовым страницам OEM относят, в частности, CP866 — используемый в Windows вариант вышеупомянутой альтернативной кодировки.
Начиная с Windows NT появился третий тип кодовых страниц — Macintosh (, ключ реестра: MACCP), совместимые с системой MacOS.
Примечания
Комментарии
Источники
*