GB2312的編碼規(guī)則 收藏
GB2312標(biāo)準(zhǔn)共收錄6763個(gè)漢字,,其中一級(jí)漢字3755個(gè),二級(jí)漢字3008個(gè),;同時(shí),,GB2312收錄了包括拉丁字母、希臘字母,、日文平假名及片假名字母,、俄羅斯語(yǔ)西里爾字母在內(nèi)的682個(gè)全形字符。 GB2312的出現(xiàn),,基本滿(mǎn)足了漢字的計(jì)算機(jī)處理需要,,它所收錄的漢字已經(jīng)覆蓋99.75%的使用頻率。GB2312中對(duì)所收漢字進(jìn)行了“分區(qū)”處理,,每區(qū)含有94個(gè)漢字/符號(hào),。這種表示方式也稱(chēng)為區(qū)位碼。
01-09區(qū)為特殊符號(hào),。
16-55區(qū)為一級(jí)漢字,,按拼音排序。
56-87區(qū)為二級(jí)漢字,,按部首/筆畫(huà)排序,。
10-15區(qū)及88-94區(qū)則未有編碼。
舉例來(lái)說(shuō),,“啊”字是GB2312之中的第一個(gè)漢字,,它的區(qū)位碼就是1601。字節(jié)結(jié)構(gòu)在使用GB2312的程序中,,通常采用EUC儲(chǔ)存方法,,以便兼容于ASCII。每個(gè)漢字及符號(hào)以?xún)蓚€(gè)字節(jié)來(lái)表示,。第一個(gè)字節(jié)稱(chēng)為“高位字節(jié)”,,第二個(gè)字節(jié)稱(chēng)為“低位字節(jié)”。 “高位字節(jié)”使用了0xA1-0xF7(把01-87區(qū)的區(qū)號(hào)加上0xA0),,“低位字節(jié)”使用了0xA1-0xFE(把01-94加上0xA0),。例如“啊”字在大多數(shù)程序中,,會(huì)以0xB0A1儲(chǔ)存。(與區(qū)位碼對(duì)比:0xB0=0xA0+16,0xA1=0xA0+1),。
所以GB2312編碼中漢字區(qū)碼的十進(jìn)制是從176到247,,位碼是從161到255.之所以存儲(chǔ)了6763小于82*94=6768,是因?yàn)樵趨^(qū)碼為215,,位碼為250-254之間共五個(gè)編碼沒(méi)有漢字編碼,,所以6768-5=6763個(gè)。
本文來(lái)自CSDN博客,,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/HEROWANG/archive/2008/06/10/2532339.aspx
|
|
來(lái)自: 秋風(fēng)00 > 《工具箱》