1 GB2312-80
GB2312碼是中華人民共和國國家漢字信息交換用編碼,全稱《信息交換用漢字編碼字符集——基本集》,由國家標準總局發布,1981年5月1日實施,通行于大陸。新加坡等地也使用此編碼。
GB2312收錄簡化漢字及符號、字母、日文假名等共7445個圖形字符,其中漢字占6763個。GB2312規定“對任意一個圖形字符都采用兩個字節表示,每個字節均采用七位編碼表示”,習慣上稱第一個字節為“高字節”,第二個字節為“低字節”。
GB2312將代碼表分為94個區,對應第一字節;每個區94個位,對應第二字節,兩個字節的值分別為區號值和位號值加32(2OH),因此也稱為區位碼。01-09區為符號、數字區,16-87區為漢字區,10-15區、88-94區是有待進一步標準化的空白區。GB2312將收錄的漢字分成兩級:第一級是常用漢字計3755個,置于16-55區,按漢語拼音字母/筆形順序排列;第二級漢字是次常用漢字計3008個,置于56-87區,按部首/筆畫順序排列。故而GB2312最多能表示6763個漢字。
GB2312的編碼范圍為2121H-777EH,與ASCII有重疊,通行方法是將GB碼兩個字節的最高位置1以示區別。
2 GBK
GB2312-80僅收漢字6763個,這大大少于現有漢字,隨著時間推移及漢字文化的不斷延伸推廣,有些原來很少用的字,現在變成了常用字,例如:朱镕基的“镕”字,未收入GB2312-80,現在大陸的報業出刊只得使用(金+容)、(金容)、(左金右容)等來表示,形式不一而同,這使得表示、存儲、輸入、處理都非常不方便,對于搜索引擎等軟件的構造來說也不是好消息,而且這種表示沒有統一標準。從我們對人民日報98年數據的處理過程中,得出這樣的經驗:回填外字最困難的就是如何得到這種表示方法的集合。
為了解決這些問題,以及配合UNICODE的實施,全國信息技術化技術委員會于1995年12月1日《漢字內碼擴展規范》。GBK向下與GB2312 完全兼容,向上支持ISO 10646國際標準,在前者向后者過渡過程中起到的承上啟下的作用。GBK 亦采用雙字節表示,總體編碼范圍為8140-FEFE之間,首字節在81-FE之間,尾字節在40-FE之間,剔除XX7F一條線。
GBK共收入21886個漢字和圖形符號,包括:
* GB2312中的全部漢字、非漢字符號。
* BIG5中的全部漢字。
* 與ISO 10646相應的國家標準GB13000中的其它CJK漢字,以上合計20902個漢字。
* 其它漢字、部首、符號,共計984個。
微軟公司自Windows 95 簡體中文版開始支持GBK代碼,但目前的多數搜索引擎都不能很好地支持GBK漢字。
GBK編碼區分三部分:
* 漢字區 包括
GBK/2:OXBOA1-F7FE, 收錄GB2312漢字6763個,按原序排列;
GBK/3:OX8140-AOFE,收錄CJK漢字6080個;
GBK/4:OXAA40-FEAO,收錄CJK漢字和增補的漢字8160個。
* 圖形符號區 包括
GBK/1:OXA1A1-A9FE,除GB2312的符號外,還增補了其它符號
GBK/5:OXA840-A9AO,擴除非漢字區。
* 用戶自定義區
即GBK區域中的空白區,用戶可以自己定義字符。
3 GB18030
GB18030 是最新的漢字編碼字符集國家標準, 向下兼容 GBK 和 GB2312 標準。 GB18030 編碼是一二四字節變長編碼。一字節部分從 0x0~0x7F 與 ASCII 編碼兼容。 二字節部分, 首字節從 0x81~0xFE, 尾字節從 0x40~0x7E 以及 0x80~0xFE, 與 GBK標準基本兼容。 四字節部分, 第一字節從 0x81~0xFE, 第二字節從 0x30~0x39, 第三和第四字節的范圍和前兩個字節分別相同。 四字節部分覆蓋了從 0x0080 開始, 除去二字節部分已經覆蓋的所有 Unicode 3.1 碼位。也就是說, GB18030 編碼在碼位空間上做到了與 Unicode 標準一一對應,這一點與 UTF-8 編碼類似。
目前最新的 glibc 2.2.x 系列已經全面支持了 GB18030 Locale 和 GB18030 與 UCS-4 之間的編碼轉換, 也就是說在系統層上 Linux 已經可以支持 GB18030 標準了。 下面問題的關鍵就是怎樣讓 XFree86 窗口系統也支持 GB18030 標準。
4 BIG5
BIG5是通行于臺灣、香港地區的一個繁體字編碼方案。雖然存在一些瑕疵,但廣泛應用于電腦行業,尤其是互聯網中,從而成為一種事實上的行業標準。
1983年10月,臺灣國家科學委員會、教育部國語推行委員會、中央標準局、行政院共同制定了《通用漢字標準交換碼》,后經修訂于1992年5月公布,更名為《中文標準交換碼》,BIG5是臺灣資訊工業策進會根據以上標準制定的編碼方案。
BIG5碼是雙字節編碼方案,其中第一個字節的值在OXAO-OXFE之間,第二個字節在OX40-OX7E和OXA1-OXFE之間。
BIG5收錄13461個漢字和符號,包括:
* 符號408個,編碼位置A140-A3BE
* 常用字5401個,編碼位置A440-C67E,包括臺灣教育部頒布的《常用國字標準字體表》的全部漢字4808個,臺灣教科書常用字587個,異體字6個。
* 次常用字7652個,編碼位置C940-F9D5,包括臺灣教育部頒布的《次常用國字標準字體表》的全部漢字6341個,《罕用國字標準字體表》中使用頻率較高的字1311個。