GBK_(character_encoding)
「GBK」文字エンコード
GBKは、中華人民共和国で使用されている簡体字中国語文字のGB2312 文字セットの拡張です。これには、GB13000.1-93、つまりISO / IEC 10646:1993またはUnicode1.1にあるすべての統合CJK文字が含まれます。1993年の最初のリリース以来、GBKはMicrosoftによってコードページ936/1386で拡張され、その後GBK1.0に拡張されました。GBKは、MicrosoftマッピングのIANA登録インターネット名でもあり 、他の実装とは主に0x80の1バイトのユーロ記号が異なります。
Guojia Biaozhun Kuozhan(GBK)
GBKのレイアウト( この図の拡大版に以下を参照してください)
MIME / IANA GBK エイリアス
CP936、MS936、windows-936、csGBKWebブラウザーは、GB 18030としてデコードし、すべての言語をサポートします。エンコード(およびその他のソフトウェアデコーダー)は、主に簡体字中国語に使用されますが、繁体字中国語、日本語、英語、ロシア語、および(部分的に)ギリシャ語もサポートします。
標準
GBK 1.0
分類
拡張ASCII、 可変幅エンコーディング、CJKエンコーディング
延長 EUC-CN 前任者B2312 継 B 18030
^ ASCIIバイトはトレイルバイトとして表示される可能性があるため、厳密な意味ではありません。
GBはGuojiaBiaozhunを省略します。これは中国語で国家標準を意味し、 KはExtension(扩集kuòzhǎn)を表します。GBKは、繁体字中国語の文字で古い標準GB2312を拡張しただけでなく、1981年にGB2312が設立された後に簡略化された漢字でも拡張しました。元中国首相の朱栄治の名前は、現在表現可能です。
2021年11月の時点で、GBKは(サブセットGB2312に次ぐ)2番目に人気のある中国のエンコーディングであり、中国と地域から提供されるWebページの2.2%がそれを宣言しており、全世界のWebページの0.1%未満です。 4]そのようにマークされている場合ですが、すべての主要なWebブラウザーは、たとえば「GB2312」または「GB2312」とマークされたドキュメントを「gbk」とマークされているかのようにデコードします(「GB_2312」とマークされたページではすべてがそうなるわけではありません)、およびGBKとGB2312をエンコードするサブセットは、合計で9.1%のシェア(または世界全体で0.2%未満)を持っています。
コンテンツ
1 歴史
2 エンコーディング
2.1 レイアウト図
3 他のエンコーディングとの関係
4 参考文献
5 ノート
6 外部リンク
歴史
1993年に、Unicode 1.1標準がリリースされました。これには、中国本土、中国台湾、日本、韓国で使用されている20,902文字が含まれます。これに続いて、中国は、Unicode1.1に相当するGuobiao標準であるGB13000.1-93をリリースしました。
GBK文字セットは、1993年にGB2312 -80の拡張として定義されましたが、GB2312で使用可能な未使用のコードポイントを介してGB13000.1-93の文字も含まれています。したがって、GBKはGB2312と下位互換性が
Microsoftは、 Windows95およびWindowsNT3.51にコードページ936としてGBKを実装しました。GBKは公式の標準ではありませんでしたが、Windows 95が広く使用されるようになったため、GBKが事実上の標準になりました。GBKにはUnicode1.1およびGB13000.1-93で定義されているすべての漢字が含まれていましたが、これらの標準では異なるコードテーブルが使用されていました。その存在の主な理由は、単にGB2312-80とGB13000.1-93の間のギャップを埋めることでした。
1995年、中国国家情報技術標準化技術委員会は、中国の内部コード拡張仕様(中国語:汉字内码扩展规范(GBK) ;拼音:HànzìNèimǎKuòzhǎnGuīfàn (GBK))、バージョン1.0、GBK1.0として知られています。はCodepage936のわずかな拡張です。新しく追加された95文字はGB13000.1-1993で見つかりませんでした。また、暫定的にUnicodePUAコードポイントが割り当てられました。 :534
Microsoftは後でコードページ936にユーロ記号を追加し、それにコード0x80を割り当てました。これは、GBK1.0では有効なコードポイントではありません。
2000年に、GB18030 -2000標準がリリースされ、GBK1.0との互換性を維持しながら置き換えられました。4バイト文字スペースの実装により、漢字の定義数を増やし、可能な文字数を増やしました。1バイト文字と2バイト文字で構成されるGB18030のサブセットは、GBKと呼ばれることもただし、一部の文字がUnicodeで定義されるようになったため、Unicodeへのマッピングが少し変更されました。標準の最新形式であるGB18030-2005では、24 文字のみがUnicodePUAにマップされます(GB 18030#PUAを参照)。
2002年に、GBKはIANA文字セットとして登録されました。登録では、コードページ936マッピングとCP936 / MS936エイリアスが使用されますが、GBK1.0仕様を参照しています。 2015年に公開されたW3Cの技術勧告は、GBK エンコーダーを1バイトのユーロ記号と4バイトのシーケンスのないGB 18030エンコーダーとして定義しています(W3CのGBK デコーダー仕様にはそのような制限はありませんが、GB18030としてデコードします。すべてのUnicodeと同じ範囲の文字で)。
エンコーディング
文字は1バイトまたは2バイトとしてエンコードされます。範囲内のバイト00–は、 ASCII7Fの場合と同じことを意味する1バイトです。厳密に言えば、この範囲には95文字と33の制御コードが
上位ビットが設定されたバイトは、2バイトの最初のバイトであることを示します。大まかに言えば、最初のバイトは範囲内にあり(81つまりFE、never80またはFF)、2番目のバイトは一部の領域と40他の領域をA0除いてです。7FA1FE
より具体的には、次のバイト範囲が定義されています。
GBKエンコーディング範囲
範囲
バイト1
バイト2
コードポイント
文字 GB 18030 GBK 1.0
コードページ936 GB 2312 レベルGBK/1 A1–A9 A1–FE 846
718 :8–10 717 715 682
レベルGBK/2B0–F7 A1–FE 6,768 6,763 6,763 6,763
レベルGBK/3 81–A0 40–FEを除く7F6,080 6,080 6,080
レベルGBK/4 AA–FE 40–A0を除く7F8,160 8,160 8,080
レベルGBK/5 A8–A9 40–A0を除く7F192 166 153
ユーザー定義1 AA–AF A1–FE 564
ユーザー定義2F8–FE A1–FE 658
ユーザー定義3 A1–A7 40–A0を除く7F 672 合計:23,940 21,887 21,886 21,791
7,445
レイアウト図
次の図は、64Kの可能なすべての2バイトコードのスペースをグラフ形式で示しています。緑と黄色の領域にはGBKコードポイントが割り当てられ、赤はユーザー定義の文字用です。色の付いていない領域は無効なバイトの組み合わせです。
他のエンコーディングとの関係
前のセクションでGBK/1およびGBK/2として示されている領域は、それ自体で、通常のエンコーディングでは単にGB2312-80であり、GBK / 1は非漢字領域であり、GBK/2は漢字領域です。GB2312、より正確にはそのEUC-CNエンコーディングは、GRにロードされた94²ISO-2022文字セットと同様にA1、範囲から1ペアのバイトを取得します。FEこれは、上の図の右下の4分の1に対応します。ただし、GB2312は、テリトリーを杭打ちした場合でも、AA–B0およびF8–にある行にコードポイントを割り当てません。FEGBKは、これらの行に拡張機能を追加しました。2つのギャップがユーザー定義の領域で埋められていることがわかります。
さらに重要なことに、GBKはバイトの範囲を拡張しました。ISO-2022 GRの範囲に2バイトの文字があると、94²=8,836の可能性に制限がグラフィックスと制御文字の厳密な領域のISO-2022モデルを放棄しますが、下位バイトが1バイト文字であり、上位バイトのペアが文字を表すという機能を維持すると、128²=16,384の位置になる可能性がGBKはその一部であり、範囲をA1– FE(各バイトで94の選択肢)から81– FE(126の選択肢)の最初のバイトと40– FE(191の選択肢)の2番目のバイトに拡張し、合計24,066の位置になります。
Microsoftのコードページ936は、一般的にGBKであると考えられています。ただし、 GBK1.0で追加された95PUA文字はコードページ936には含まれコードページ936にも、GBK1.0にはない0x80の1バイトのユーロ記号が
GBKの後継であるGB18030-200030は、2番目のバイト( – )で使用可能な残りの範囲を使用して、39GBKをサブセットとして保持しながら、可能性の数をさらに拡大します。
参考文献
^ abc 「 文字 セット 」。
^ 「コードページ936-PRCGBK(XGB)」。Microsoft。2002-10-01にオリジナルからアーカイブされました。 Codepage936とUnicode間の変換マップ。正しく表示するには、ブラウザでGB18030またはGBKを手動で選択する必要が ^ 「中国および準州を使用するWebサイト間での文字エンコードの配布」。w3techs.com 。2021-11-21を取得。
^ 「ウェブサイトの文字エンコードの使用統計の歴史的傾向、2021年10月」。w3techs.com 。2021-10-11を取得。
^ 「エンコーディング:要約されたテスト結果」。www.w3.org 。2019-11-15を取得。
^ 中国標準化管理委員会(SAC)(2005-11-18)。GB 18030-2005:情報技術-中国語でコード化された文字セット。
^ GB 18030-2005標準p.9、79 ^ 「エンコーディング標準#gbk-encoder」。W3C 。
^ Scherer、Markus(2002年1月4日)。「Re:GBKとGB2312で楽しい」。Unicodeメールリストアーカイブ。
ノート編集
外部リンク
ICUの信頼できるGBKマッピング-GB18030データの一部
GBKのMicrosoftリファレンスページ
GBKのUnicodeNBへのマッピング:これはMicrosoftコードページ936であり、21791個の2バイトコードポイント、96個の1バイトグラフィック文字、および33個の制御文字のエントリが含まれています。これは、21886文字のGBKとまったく同じではありません。
GBKコードテーブルNBこのgbkでエンコードされたページには、2つの場所を除いて完全に入力された使用可能なコーディングスペースが表示されます。合計32256個のグリフ(32352と暗黙のシングルバイトASCIIコードは示されていません)は、23940または21886を超えています。実際このテーブルのレンダリングは、ブラウザのGBKデコーダに依存します。”