GBK (кодировка символов)

редактировать
Кодировка символов упрощенного китайского
Guojia Biaozhun Kuozhan (GBK)
GBK encoding.svg Макет GBK (см. Ниже для увеличенной копии этой схемы)
MIME / IANAGBK
Псевдоним (а)CP936, MS936, windows-936, csGBK
Язык (и)Веб-браузеры, декодируют как GB 18030, поддерживают все языки, в то время как кодирование (и другие программные декодеры) в основном используется для упрощенного китайского, но также поддерживает Традиционный китайский, Японский, Английский, Русский и (частично) Греческий.
СтандартныйGBK 1.0
КлассификацияРасширенный ASCII, кодирование переменной ширины, кодирование CJK
РасширяетEUC-CN
, которому предшествуетGB2312
ПреемникGB 18030
  • v
  • t

GBK является расширением набора символов GB2312 для упрощенных китайских символов, используемых в Китайская Народная Республика. Он включает все унифицированные символы CJK из GB13000.1-93, то есть ISO / IEC 10646: 1993 или Unicode 1.1. С момента своего первого выпуска в 1993 году GBK был расширен Microsoft в кодовой странице 936/1386, которая затем была расширена до GBK 1.0 . GBK также является зарегистрированным IANA Интернет-именем для сопоставления Microsoft, которое отличается от других реализаций, прежде всего, однобайтовым знаком евро в 0x80.

GB означает Guojia Biaozhun, что означает национальный стандарт на китайском языке, а K означает расширение (扩展 kuòzhǎn). GBK не только расширил старый стандарт GB2312 традиционными китайскими иероглифами, но также и китайскими иероглифами, которые были упрощены после создания GB2312 в 1981 году. С появлением GBK некоторые имена с символами, которые ранее не представлялись, например, символ 镕 (róng) в имя бывшего китайского премьер-министра Чжу Жунцзи теперь можно представить.

По состоянию на июнь 2020 года GBK является второй по популярности китайской кодировкой (после GB2312, хотя, вероятно, они декодируются как единое целое и то же самое), при этом 3,6% веб-страниц обслуживаются из Китая и территорий, декларирующих это, или 0,2% всех веб-страниц в мире, то есть когда они отмечены как таковые, но все основные веб-браузеры декодируют документы, помеченные как, например, «GB 2312 » или «GB2312 », как если бы они были помечены как «gbk» (хотя не все делают это для страниц с пометкой «GB_2312»), а также GBK и подмножество кодирования GB 2312 имеют совокупную долю в 16,7% (или 0,6% в мире).

Содержание

  • 1 История
  • 2 Кодировка
    • 2.1 Схема расположения
  • 3 Связь с другими кодировками
  • 4 Ссылки
  • 5 Примечания
  • 6 Внешние ссылки

История

В 1993 году был выпущен стандарт Unicode 1.1, включающий 20 902 символа, используемых в материковом Китае, Тайване, Японии и Корея. После этого Китай выпустил GB13000.1-93, стандартный эквивалент Юникода Гуобяо.

Набор символов GBK был определен в 1993 году как расширение GB2312 -80, а также включает символы GB13000.1-93 с помощью неиспользуемых доступных кодовых точек. в GB2312. Следовательно, GBK обратно совместим с GB2312.

Microsoft реализовала GBK в Windows 95 и Windows NT 3.51 как Кодовая страница 936. Хотя GBK никогда не был официальным стандартом, широкое использование Windows 95 привело к тому, что GBK стал стандартом де-факто. Хотя GBK включал все китайские символы, определенные в Unicode 1.1 и GB13000.1-93, в этих стандартах использовались разные кодовые таблицы. Основной причиной его существования было просто восполнить разрыв между GB2312-80 и GB13000.1-93.

В 1995 году Национальный технический комитет по стандартизации информационных технологий Китая разработал спецификацию расширения внутреннего кода Китая (китайский : 汉字 内 码 扩展 规范 (GBK); пиньинь : Hànzì Nèim Kuòzhǎn Guīfàn (GBK)), версия 1.0, известная как GBK 1.0, которая является небольшим расширением кодовой страницы 936. Вновь добавленные 95 символов не были найдены в GB 13000.1-1993 и были временно присвоены Кодовые точки Unicode PUA.

Позднее Microsoft добавила знак евро на кодовую страницу 936 и присвоила ему код 0x80. Это недопустимый код в GBK 1.0.

В 2000 году был выпущен стандарт GB18030 -2000, который заменил, но сохранил совместимость с GBK 1.0. Это увеличило количество определений китайских символов и расширило количество возможных символов за счет реализации четырехбайтовых пространств символов. Подмножество GB 18030, состоящее из однобайтовых и двухбайтовых символов, иногда также называют GBK . Однако отображение в Unicode было немного изменено, поскольку некоторые символы теперь определены в Unicode. В самой современной форме стандарта GB 18030-2005 только 24 символа все еще отображаются в Unicode PUA (см. GB 18030 # PUA.)

В 2002 году GBK был зарегистрирован как кодировка IANA; регистрация использует отображение кодовой страницы 936, а также псевдонимы CP936 / MS936, но ссылается на спецификацию GBK 1.0. Техническая рекомендация W3C, опубликованная в 2015 году, определяет GBK как кодировщик GB 18030 с однобайтовым знаком евро и без четырехбайтовых последовательностей (в то время как спецификация декодера W3C GBK не имеет такого ограничения, декодирует как GB 18030, т.е. тот же диапазон букв, что и во всех Unicode ).

Кодировка

Символ кодируется как 1 или 2 байта. Байт в диапазоне 007F- это один байт, который означает то же самое, что и в ASCII. Строго говоря, в этом диапазоне 95 символов и 33 управляющих кода.

Байт с установленным старшим битом указывает, что это первый из 2 байтов. Грубо говоря, первый байт находится в диапазоне 81FE(то есть никогда не 80или FF), а второй байт - 40A0, кроме 7Fдля одних регионов и A1FEдля других.

Более конкретно, определены следующие диапазоны байтов:

диапазоны кодирования GBK
диапазонбайт 1байт 2код точексимволов
GB 18030GBK 1.0Кодовая страница 936GB 2312
УровеньA1A9A1FE846718717715682
УровеньB0F7A1FE6,7686,7636,7636,763
Уровень GBK / 381A040FEкроме 7F6,0806,0806,080
Уровень GBK / 4AAFE40A0кроме 7F8,1608,1608,080
УровеньA8A940A0кроме 7F192166153
определяемый пользователем 1AAAFA1FE564
определяемый пользователем 2F8FEA1FE658
определяемый пользователем 3A1A740A0кроме 7F672
итого :23,94021,88721,88621,7917,445

Схема размещения

В графической форме на следующем рисунке показано пространство для всех возможных 2-байтовых кодов размером 64 КБ. Зеленая и желтая области назначены кодовым точкам GBK, красная - для определяемых пользователем символов. Неокрашенные области являются недопустимыми комбинациями байтов.

GBK encoding.svg

Связь с другими кодировками

Области, указанные в предыдущем разделе как GBK / 1 и GBK / 2, взятые сами по себе, представляют собой просто GB2312-80 в его обычной кодировке, GBK / 1 - это не- регион Ханзи и GBK / 2 регион Ханзи. GB2312, или, точнее, его кодировка EUC-CN, берет пару байтов из диапазона A1FE, как любой набор символов 94² ISO-2022, загруженный в GR. Это соответствует нижней правой четверти иллюстрации выше. Однако GB2312 не назначает никаких кодовых точек строкам, расположенным в AAB0и F8FE, даже если он разбил территорию. GBK добавил расширения к этим строкам. Вы можете видеть, что два пробела были заполнены пользовательскими областями.

Что еще более важно, GBK расширил диапазон байтов. Наличие двухбайтовых символов в диапазоне ISO-2022 GR дает ограничение в 94² = 8 836 возможностей. Отказавшись от модели строгих областей ISO-2022 для графических и управляющих символов, но сохранив свойство младших байтов быть 1-байтовыми символами и пар старших байтов, обозначающих символ, вы потенциально можете иметь 128² = 16 384 позиции. GBK принимает на себя часть этого, расширяя диапазон от A1FE(94 варианта для каждого байта) до 81FE(126 вариантов) для первого байта и 40FE(191 вариант) для второго байта, в общей сложности 24 066 позиции.

Кодовая страница Microsoft 936 обычно считается GBK. Однако 95 символов PUA, добавленные в GBK 1.0, не включены в кодовую страницу 936. Кодовая страница 936 также имеет однобайтовый знак евро в 0x80, которого нет в GBK 1.0..

Преемник GBK, GB18030 -2000, использует оставшийся диапазон, доступный для второго байта (3039), для дальнейшего расширения числа возможностей, сохраняя GBK как подмножество.

Ссылки

Примечания

Внешние ссылки

  • Официальное сопоставление GBK ICU - часть данных GB18030
  • Справочная страница Microsoft для GBK
  • Сопоставление GBK с Unicode NB: это кодовая страница Microsoft 936, которая содержит записи для 21791 двухбайтовой кодовой точки, 96 однобайтовых графических символов и 33 управляющих символа. Это не совсем то же самое, что GBK, который состоит из 21886 символов.
  • Таблица кодов GBK Примечание. На этой странице с кодировкой gbk показано доступное пространство кодирования, полностью заполненное, за исключением двух мест, всего 32256 символов (32352 с подразумеваемыми однобайтовыми кодами ASCII, которые не показаны), что больше 23940 или 21886. Фактическое отображение этой таблицы зависит от декодера GBK вашего браузера.
Последняя правка сделана 2021-05-21 08:40:15
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте