GBK (кодировка символов) - GBK (character encoding)
Эта статья нужны дополнительные цитаты для проверка.Октябрь 2016) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Макет ГБК (Смотри ниже для увеличенной копии этой диаграммы) | |
MIME / IANA | ГБК |
---|---|
Псевдоним (а) | CP936, MS936, windows-936, csGBK |
Язык (и) | Веб-браузеры, декодируются как ГБ 18030, поддерживающих все языки, в то время как кодирование (и другие программные декодеры) в основном используется для Упрощенный китайский, но также поддерживает Традиционный китайский, Японский, английский, русский и (частично) Греческий. |
Стандарт | GBK 1.0 |
Классификация | Расширенный ASCII,[а] кодирование с переменной шириной, Кодирование CJK |
Расширяется | EUC-CN |
Предшествует | GB2312 |
Преемник | ГБ 18030 |
| |
ГБК является продолжением GB2312 набор символов за Упрощенные китайские иероглифы, используемый в Китайская Народная Республика. Включает в себя все унифицированные CJK персонажи содержится в GB13000.1-93, т.е. ISO / IEC 10646: 1993, или Unicode 1.1. С момента своего первого выпуска в 1993 году GBK был расширен Microsoft в Кодовая страница 936/1386, который затем был расширен до GBK 1.0. ГБК также зарегистрированное IANA имя в Интернете для сопоставления Microsoft,[1] который отличается от других реализаций в первую очередь однобайтовым знак евро по адресу 0x80.
ГБ сокращает Гоцзя Бяочжун, что значит национальный стандарт на китайском, а K означает Расширение (扩展 Kuòzhǎn). GBK не только расширил старый стандарт GB2312 традиционными китайскими иероглифами, но также и китайскими иероглифами, которые были упрощены после создания GB2312 в 1981 году. С появлением GBK некоторые имена с символами, которые ранее не представлялись, например 镕 (Róng) персонаж бывшего китайского премьера Чжу Жунцзи имя, теперь можно представить.[2]
По состоянию на июнь 2020 г.[Обновить], GBK - вторая по популярности китайская кодировка (после GB2312, хотя, вероятно, они декодируются как одно и то же), при этом 3,6% веб-страниц обслуживаются из Китая и территорий, декларирующих это,[3] или 0,2% всех веб-страниц в мире,[4] то есть когда они помечены как таковые, но все основные веб-браузеры декодируют документы, помеченные, например, как "ГБ 2312" или же "GB2312 "как если бы они были помечены как" gbk "(хотя не все это делают для страниц с пометкой" GB_2312 "),[5] и GBK и кодирование подмножества ГБ 2312 имеют совокупную долю в 16,7% (или 0,6% в мире).
История
В 1993 г. Unicode 1.1 был выпущен стандарт, в том числе 20902 символа, используемых в материковый Китай, Тайвань, Япония и Корея. После этого Китай выпустил GB13000.1-93, Стандарт Гобяо эквивалент Unicode 1.1.
В ГБК набор символов был определен в 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)), Версия 1.0, известная как GBK 1.0, который является небольшим расширением кодовой страницы 936. Недавно добавленные 95 символов не были найдены в GB 13000.1-1993, и им временно назначен Unicode PUA кодовые точки.[6]:534
Позднее Microsoft добавила знак евро на кодовую страницу 936 и присвоил ей код 0x80. Это недопустимый код в GBK 1.0.
В 2000 г. GB18030 -2000 был выпущен, заменив, но сохранив совместимость с GBK 1.0. Это увеличило количество определений китайских символов и расширило количество возможных символов за счет реализации четырехбайтовых пространств символов. Подмножество GB 18030, состоящее из однобайтовых и двухбайтовых символов, иногда также называют ГБК. Однако отображение в Unicode было немного изменено, так как некоторые символы теперь определены в Unicode. В самой современной форме стандарта GB 18030-2005 всего 24[7] символы по-прежнему отображаются в PUA Unicode (см. ГБ 18030 # PUA.)
В 2002, ГБК был зарегистрирован как кодировка IANA; регистрация использует кодовая страница 936 отображение, а также псевдонимы CP936 / MS936, но относится к спецификации GBK 1.0.[1] W3C техническая рекомендация, опубликованная в 2015 г.[8] определяет ГБК кодировщик как кодировщик GB 18030 с однобайтовым знаком евро и без четырехбайтовых последовательностей (в то время как W3C ГБК декодер спецификация не имеет такого ограничения, расшифровывается как ГБ 18030, т.е. с тем же диапазоном букв, что и все Unicode ).
Кодирование
Символ кодируется 1 или 2 байтами. Байт в диапазоне 00
–7F
это один байт, который означает то же самое, что и в ASCII. Строго говоря, в этом диапазоне 95 символов и 33 управляющих кода.
Байт с установленным старшим битом указывает, что это первый из 2 байтов. Грубо говоря, первый байт находится в диапазоне 81
–FE
(то есть никогда 80
или же FF
), а второй байт - 40
–A0
Кроме 7F
для некоторых областей и A1
–FE
для других.
Более конкретно, определены следующие диапазоны байтов:
классифицировать | байт 1 | байт 2 | кодовые точки | символы | |||
---|---|---|---|---|---|---|---|
ГБ 18030 | GBK 1.0 | Кодовая страница 936 | ГБ 2312 | ||||
Уровень GBK / 1 | A1 –A9 | A1 –FE | 846 | 718[6]:8–10 | 717 | 715 | 682 |
Уровень GBK / 2 | B0 –F7 | A1 –FE | 6,768 | 6,763 | 6,763 | 6,763 | |
Уровень GBK / 3 | 81 –A0 | 40 –FE Кроме 7F | 6,080 | 6,080 | 6,080 | ||
Уровень GBK / 4 | AA –FE | 40 –A0 Кроме 7F | 8,160 | 8,160 | 8,080 | ||
Уровень GBK / 5 | A8 –A9 | 40 –A0 Кроме 7F | 192 | 166 | 153 | ||
определяемый пользователем 1[6] | AA –AF | A1 –FE | 564 | ||||
определяемый пользователем 2 | F8 –FE | A1 –FE | 658 | ||||
определяемый пользователем 3 | A1 –A7 | 40 –A0 Кроме 7F | 672 | ||||
общий: | 23,940 | 21,887 | 21,886 | 21,791 | 7,445 |
Схема расположения
В графической форме на следующем рисунке показано пространство для всех возможных 2-байтовых кодов размером 64 КБ. Зеленая и желтая области назначены кодовым точкам GBK, красная - для определяемых пользователем символов. Неокрашенные области являются недопустимыми комбинациями байтов.
Отношение к другим кодировкам
Области, обозначенные в предыдущем разделе как GBK / 1 и GBK / 2, взятые сами по себе, представляют собой просто GB2312-80 в его обычной кодировке, GBK / 1 является регионом без ханзи, а GBK / 2 - регионом ханзи. GB2312, или, точнее, его кодировка EUC-CN, берет пару байтов из диапазона A1
–FE
, как и любой набор символов 94² ISO-2022, загруженный в GR. Это соответствует нижней правой четверти иллюстрации выше. Однако GB2312 не назначает никаких кодовых точек строкам, расположенным в AA
–B0
и F8
–FE
, хотя и занял территорию. GBK добавил расширения к этим строкам. Вы можете видеть, что два пробела были заполнены пользовательскими областями.
Что еще более важно, GBK расширил диапазон байтов. Наличие двухбайтовых символов в диапазоне ISO-2022 GR дает предел 94² = 8 836 возможных. Отказавшись от модели строгих областей ISO-2022 для графических и управляющих символов, но сохранив свойство младших байтов быть 1-байтовыми символами и пар старших байтов, обозначающих символ, вы потенциально можете иметь 128² = 16 384 позиции. GBK принимает в этом участие, расширяя диапазон от A1
–FE
(94 варианта для каждого байта) до 81
–FE
(126 вариантов) для первого байта и 40
–FE
(191 вариант) для второго байта, всего 24 066 позиций.
Кодовая страница Microsoft 936 обычно считается GBK.[1] Тем не менее 95 символов PUA добавленные в GBK 1.0, не включены в кодовую страницу 936. Кодовая страница 936 также имеет однобайтную знак евро по адресу 0x80, которого нет в GBK 1.0.[9]
Преемник ГБК, GB18030 -2000, использует оставшийся диапазон, доступный для второго байта (30
–39
), чтобы еще больше расширить количество возможностей, сохранив GBK как подмножество.
Рекомендации
- ^ а б c «Наборы символов». Получено 3 октября 2016.
- ^ «Кодовая страница 936 - КНР GBK (XGB)». Архивировано из оригинал на 2002-10-01. Карта конверсии между Кодовая страница 936 и Unicode. Необходимо выбрать вручную GB18030 или GBK в браузере для правильного просмотра.
- ^ «Распределение кодировок символов среди веб-сайтов, использующих Китай и территории». w3techs.com. Получено 2020-06-01.
- ^ «Исторические тенденции использования кодировок символов, июнь 2020 г.». w3techs.com. Получено 2020-06-01.
- ^ «Кодирование: Обобщенные результаты тестирования». www.w3.org. Получено 2019-11-15.
- ^ а б c Управление по стандартизации Китая (SAC) (18 ноября 2005 г.). GB 18030-2005: Информационные технологии - набор китайских кодированных символов.
- ^ GB 18030-2005 Стандарт стр.9, 79
- ^ "Стандарт кодирования # gbk-encoder". W3C. Получено 2016-10-02.
- ^ Шерер, Маркус (4 января 2002 г.). "Re: Развлечения с GBK и GB2312". Архив почтового списка Unicode. Получено 4 марта 2020.
Примечания
внешняя ссылка
- Авторитетное картирование GBK ICU - часть GB18030 данные
- Справочная страница Microsoft для GBK
- Преобразование GBK в Unicode Примечание: это кодовая страница Microsoft 936, которая содержит записи для 21791 двухбайтовой кодовой точки, 96 однобайтовых графических символов и 33 управляющих символа. Это не совсем то же самое, что GBK, который состоит из 21886 символов.
- Кодовая таблица GBK N.B. На этой странице с кодировкой gbk показано доступное пространство кодирования, полностью заполненное, за исключением двух мест, всего 32256 символов (32352 с подразумеваемыми однобайтовыми кодами ASCII, которые не показаны), что больше 23940 или 21886. Фактическое отображение этой таблицы зависит от декодера GBK вашего браузера.