gb18030

gb18030

國家標準GB18030-2005《信息技術 中文編碼字元集》是我國繼GB2312-1980和GB13000.1-1993之後最重要的漢字編碼標準,是我國計算機系統必須遵循的基礎性標準之一。 GB18030有兩個版本:GB18030-2000和GB18030-2005。GB18030-2000是GBK的取代版本,它的主要特點是在GBK基礎上增加了CJK統一漢字擴充A的漢字。GB18030-2005的主要特點是在GB18030-2000基礎上增加了CJK統一漢字擴充B的漢字。

概念簡介

國家標準GB18030-2000《信息交換用漢字編碼字元集基本集的補充》是我國繼GB2312-1980和GB13000-1993之後最重要的漢字編碼標準,是我國計算機系統必須遵循的基礎性標準之一。

GB18030-2000編碼標準是由信息產業部和國家質量技術監督局在2000年 3月17日聯合發布的,並且將作為一項國家標準在2001年的1月正式強制執行。

GB18030-2005《信息技術中文編碼字元集》是我國制訂的以漢字為主並包含多種我國少數民族文字(如藏、蒙古、傣、彝、朝鮮、維吾爾文等)的超大型中文編碼字元集強制性標準,其中收入漢字70000餘個。

版本區別

GB18030最新版本是GB18030-2005。GB18030-2005與GB18030-2000的編碼體系結構是完全相同的。那么,GB18030的2000版和2005版有什麼區別和聯繫呢?

2000年發布的GB18030-2000,全名是《信息技術 漢字編碼字元集 基本集的擴充》。GB18030-2000僅規定了常用非漢字元號和27533個漢字(包括部首、部件等)的編碼。

GB18030-2000是全文強制性標準,市場上銷售的產品必須符合。2005年發布的GB18030-2005在GB18030-2000的基礎上增加了42711個漢字和多種我國少數民族文字的編碼,增加的這些內容是推薦性的。原GB18030-2000中的內容是強制性的,市場上銷售的產品必須符合。故GB18030-2005為部分強制性標準,自發布之日起代替GB18030-2000。 GB18030-2005的單位元組編碼部分、雙位元組編碼部分和四位元組編碼部分的CJK統一漢字擴充A(即0x8139EE39—0x82358738)部分為強制性。

適用範圍

GB 18030標準第1條規定:“本標準適用於圖形字元信息的處理、交換、存儲、傳輸、顯現、輸入和輸出。”簡單地說,GB18030可用於一切處理中文(包括漢字和少數民族文)信息,特別是漢字信息的信息處理產品。GB18030-2005標準可套用於中文處理的軟體類產品,如作業系統、資料庫、中間件、辦公軟體、財務軟體、CAD軟體、表處理軟體、教育軟體、字型字型檔等。GB18030-2005標準還可套用於具有處理漢字功能的硬體產品,如印表機、行動電話、PDA產品等。

達到要求

問:產品達到哪些要求才算符合GB 18030?

答:同時達到以下兩個要求的產品,為符合GB 18030-2005強制部分的產品:

(1)產品可以正確輸入、輸出、處理GB 18030-2005強制部分規定的全部漢字字元;

(2)產品可以正確識別GB 18030-2005強制性部分規定的全部漢字字元對應的編碼。

總體結構

碼位總體結構 碼位總體結構

標準採用單位元組、雙位元組和四位元組三種方式對字元編碼。單位元組部分採用GB/T 11383的編碼結構與規則,使用0×00至0×7F碼位(對應於ASCII碼的相應碼位)。雙位元組部分,首位元組碼位從0×81至0×FE,尾位元組碼位分別是0×40至0×7E和0×80至0×FE。四位元組部分採用GB/T 11383未採用的0×30到0×39作為對雙位元組編碼擴充的後綴,這樣擴充的四位元組編碼,其範圍為0×81308130到0×FE39FE39。其中第一、三個位元組編碼碼位均為0×81至0×FE,第二、四個位元組編碼碼位均為0×30至0×39。碼位總體結構見右圖。

字彙

GB18030-2000字彙

GB18030-2000的字彙部分是這樣寫的:

本標準收錄的字元分別以單位元組、雙位元組和四位元組編碼。

1、單位元組部分

本標準中,單位元組的部分收錄了GB 11383的0x00到0x7F全部128個字元及單位元組編碼的歐元符號。

2、雙位元組部分

本標準中,雙位元組的部分收錄內容如下:

GB 13000.1的全部CJK統一漢字字元。

GB 13000.1的CJK兼容區挑選出來的21個漢字。

GB 13000.1中收錄而GB 2312未收錄的我國台灣地區使用的圖形字元139個。

GB 13000.1收錄的其它字元31個。

GB 2312中的非漢字元號。

GB 12345 的豎排標點符號19個。

GB 2312未收錄的10個小寫羅馬數字。

GB 2312未收錄的帶音調的漢語拼音字母5個以及ɑ 和ɡ 。

漢字數字“〇”。

表意文字描述符13個。

增補漢字和部首/構件80個。

雙位元組編碼的歐元符號。

3 、四位元組部分

本標準的四位元組的部分,收錄了上述雙位元組字元之外的,包括CJK統一漢字擴充A在內的GB 13000.1 中的全部字元。

GB18030-2005字彙

GB18030-2005的字彙部分是這樣寫的:

本標準收錄的字元分別以單位元組、雙位元組或四位元組編碼。

1、單位元組部分

本標準中,單位元組的部分收錄了GB/T 11383-1989的0x00到0x7F全部128個字元。

2、雙位元組部分

本標準中,雙位元組的部分收錄內容如下:

GB 13000.1-1993的全部CJK統一漢字字元。

GB 13000.1-1993的CJK兼容區挑選出來的21個漢字。

GB 13000.1-1993中收錄而GB 2312未收錄的我國台灣地區使用的圖形字元139個。

GB 13000.1-1993收錄的其它字元31個。

GB 2312中的非漢字元號。

GB 12345 的豎排標點符號19個。

GB 2312未收錄的10個小寫羅馬數字。

GB 2312未收錄的帶音調的漢語拼音字母5個以及ɑ 和ɡ 。

漢字數字“〇”。

表意文字描述符13個。

對GB 13000.1-1993增補的漢字和部首/構件80個。

雙位元組編碼的歐元符號。

3、四位元組部分

本標準的四位元組的部分,收錄了上述雙位元組字元之外的,GB 13000的CJK統一漢字擴充A、CJK統一漢字擴充B和已經在GB13000中編碼的我國少數民族文字的字元。

GB18030-2005最主要的變化是增加了CJK統一漢字擴充B。它還去掉了單位元組編碼的歐元符號0x80)。

GB18030有1611668個碼位,在GB18030-2005中定義了76556個字元。隨著我國漢字整理和編碼研究工作的不斷深入,以及國際標準ISO/IEC 10646的不斷發展,GB18030所收錄的字元將在新版本中增加。

漢字

GB18030-2000漢字

如下表所示,GB18030-2000收錄了27533個漢字:

類別 碼位範圍 碼位數 字元數 字元類型
雙位元組部分 第一位元組0xB0-0xF7 6768 6763 漢字
第二位元組0xA1-0xFE
第一位元組0x81-0xA0 6080 6080 漢字
第二位元組0x40-0xFE
第一位元組0xAA-0xFE 8160 8160 漢字
第二位元組0x40-0xA0
四位元組部分 第一位元組0x81-0x82 25200 6530 CJK統一漢字擴充A
第二位元組0x30-0x39
第三位元組0x81-0xFE
第四位元組0x30-0x39

27533就是6763+6080+8160+6530。雙位元組部分的6763+6080+8160=21003個漢字就是GBK的21003個漢字。

在Unicode中,CJK統一漢字擴充A有6582個漢字,為什麼這裡只有6530個漢字?

這是因為在GBK時代,雙位元組部分已經收錄過CJK統一漢字擴充A的52個漢字,所以還餘6530個漢字。

GB18030-2005漢字

如下表所示,GB18030-2005收錄了70244個漢字:

類別 碼位範圍 碼位數 字元數 字元類型
雙位元組部分 第一位元組0xB0-0xF7 6768 6763 漢字
第二位元組0xA1-0xFE
第一位元組0x81-0xA0 6080 6080 漢字
第二位元組0x40-0xFE
第一位元組0xAA-0xFE 8160 8160 漢字
第二位元組0x40-0xA0
四位元組部分 第一位元組0x81-0x82 25200 6530 CJK統一漢字擴充A
第二位元組0x30-0x39
第三位元組0x81-0xFE
第四位元組0x30-0x39
第一位元組0x95-0x98 50400 42711 CJK統一漢字擴充B
第二位元組0x30-0x39
第三位元組0x81-0xFE
第四位元組0x30-0x39

70244就是6763+6080+8160+6530+42711。

版本變化

GB18030-2005相對於GB18030-2000主要有以下變化:

1、在四位元組字元表中增加CJK統一漢字擴充B和已經在GB13000中編碼的我國少數民族文字字元的字形。其實GB18030-2000已經映射了這些碼位,但GB18030-2000沒有給出這些字元的字形。

2、調整字元?的編碼。

3、去掉了單位元組編碼的歐元符號(0x80)。

(糾正:其實GBK和GB18030-2000都沒有單位元組編碼的歐元符號,微軟的CP936才有這個符號並定義在0x80)

制定標準

按國際慣例,GB 18030制定採用的標準如下:

GB 18030-2000收錄了27533個漢字,GB 18030-2005收錄了70244個漢字。GB18030的總編碼空間超過150萬個碼位,為解決人名、地名用字問題提供了方案,為漢字研究、古籍整理等領域提供了統一的信息平台基礎。

我國大部分計算機系統仍然採用GB 2312編碼。GB 18030與GB 2312一脈相承,較好地解決了舊系統向新系統的轉換問題,並且改造成本較小。從我國信息技術和信息產業發展的角度出發,考慮到解決我國用戶的需要及解決現有系統的兼容性和對多種作業系統的支持,採用GB 18030是我國較好的選擇,而GB 13000.1更適用於未來國際間的信息交換。考慮到GB 18030和GB 13000的兼容問題,標準起草組編制了GB 18030與GB 13000.1的代碼映射表,使得兩個編碼體系可以自由轉換。同時,還開發了GB 18030基本點陣字型庫。

世界許多國家和地區從方便本國和民族套用的角度出發,制定了相應的編碼標準和內碼體系,如日本的JIS X 0208和JIS X 0212,韓國的KS C 5601和KS C 5657等,這是國際上採用的通行慣例。制定GB 18030同樣符合國際慣例,它全面兼容GB 2312,在字彙上兼容GB 13000.1,可以充分利用已有資源,保證不同系統間的兼容性,最大限度地共享資源,為我國軟體產業留有巨大的發展空間。可以相信,GB 18030的實施將有利於國產軟體的發展並形成規模,使我國的中文信息技術再上一個台階。

標準歷程

1980年我國頒布了第一個漢字編碼字元集標準,即GB 2312-80《信息交換用漢字編碼字元集基本集》。該標準共收了6763個漢字及常用符號,奠定了中文信息處理的基礎。

隨著國際間的交流與合作的擴大,信息處理套用對字元集提出了多文種、大字量、多用途的要求。1993年國際標準化組織發布了ISO/IEC 10646-1《信息技術通用多八位編碼字元集第一部分體系結構與基本多文種平面》。我國等同採用此標準制定了GB 13000.1-1993。該標準採用了全新的多文種編碼體系,收錄了中、日、韓20902個漢字,是編碼體系未來發展方向。由於其新的編碼體系與現有多數作業系統和外部設備不兼容,所以它的實現仍需要有一個過程,還不能完全解決我國當前套用的迫切需要。

考慮到GB 13000的完全實現有待時日,以及GB 2312編碼體系的延續性和現有資源和系統的有效利用與過渡,我們選擇了在GB 2312(GB 2311)的基礎上進行擴充,並且在字彙上與GB 13000.1兼容的方案,研製一個新的標準——漢字編碼基本集的擴充,進而完善GB 2312,以滿足我國郵政、戶政、金融、地理信息系統等套用的迫切需要。

此項目業已列入1998年國家標準制定計畫。1998年10月,由信息產業部電子四所、北京大學計算機技術研究所、北大方正集團、新天地公司、四通新世紀公司、中科院軟體所、長城軟體公司、中軟總公司、金山軟體公司和聯想公司的技術人員組成標準起草組。在標準研製過程中,全國信息技術標準化技術委員會多次召集標準起草組和知名公司對標準草案進行充分地研究論證,並且特邀了微軟公司、惠普公司、Sun公司和IBM公司等參加,廣泛徵求意見。標準起草組經過反覆斟酌和驗證,提出了標準制定原則——與GB 2312信息處理交換碼所對應的事實上的內碼標準兼容,在字彙上支持GB 13000.1的全部中、日、韓(CJK)統一漢字字元和全部CJK擴充A的字元,並且確定了編碼體系和27484個漢字,形成兼容性、擴展性、前瞻性兼備的方案。

信息產業部和原國家質量技術監督局於2000年3月17日聯合發布了該標準,即GB 18030-2000《信息技術信息交換用漢字編碼字元集基本集的擴充》。該標準作為國家強制性標準自發布之日起實施,過渡期到2001年8月31日止。

期間,全國信標委曾制定和發布《漢字擴展規範GBK 1.0》,並在MS Windows 9x/Me/NT/2000、IBM OS/2的系統中廣泛套用。GB18030是國家標準,在技術上是GBK的超集,並與其兼容,因此,GBK將結束其歷史使命。

熱門詞條

聯絡我們