jinfeng_wang

          G-G-S,D-D-U!

          BlogJava 首頁 新隨筆 聯系 聚合 管理
            400 Posts :: 0 Stories :: 296 Comments :: 0 Trackbacks

          下面對這個圖進行一下說明:
          第一個紅框中的內容是我從unicode.org提供的GB2312->Unicode碼表中隨便抽取的一行,下面以它為例進行說明。
          這里面列出的GB2312和我們計算機實際使用的GB2312是不一樣的。因為GB2312的和ASCII的編碼范圍有沖突,所以使用時都采用兩個字節高位置1的方式,也就是下面我列出的那個EUC才是在計算機內存儲形式的GB2312。原來這是一個“暗”字。
          前者和”區位碼”是有直接關系的,”暗”的區位碼1621,轉換成HEX: 0×1015,只要把高低位都+0×20,就得到了GB2312: 0×3035。
          下面再看看UNICODE,大家可以做一個實驗,把0×6697轉成DEC: 26263,建一個空白HTML檔(encoding隨意),在里面寫上 暗 怎么樣,就能看到這個字了吧:)
          把它轉成BIN: 0110 0110 1001 0111, 查UTF-8的轉換表,這個字的Unicode: U+6679 在 U+0800 和 U+FFFF 之間,是要轉換成三字節的UTF-8的,轉換方法如上面所示,最后得出的UTF-8編碼就是: 0xE69A97。


          UTF-8字符各字節含義

          0×00-0×7F 同ASCII,也不可能作為任何其他多字節UTF-8字符的一部分
          0xC0-0xDF 多字節UTF-8字符的開始字節,而且據此可以判斷出該UTF-8字符的長度(字節數)
          0×80-0xBF 多字節UTF-8字符的跟隨字節
          0xFE-0xFF UTF-8未使用

          那么如何判斷UTF-8字符的長度呢?

          0×00-0×7F 1字節
          0xC0-0xDF 2字節
          0xE0-0xEF 3字節
          0xF0-0xF7 4字節
          0xF8-0xFB 5字節
          0xFC-0xFD 6字節

          UTF-8字符范圍

          Unicode 字節數 表示方法 字節范圍
          U-00000000 -
          U-0000007F
          1 0xxxxxxx (0×00-0×7F)
          U-00000080 -
          U-000007FF
          2 110xxxxx 10xxxxxx (0xC2-0xDF)(0×80-0xBF)
          U-00000800 -
          U-0000FFFF
          3 1110xxxx 10xxxxxx 10xxxxxx 0xE0(0xA0-0xBF)(0×80-0xBF)
          (0xE1-0xEF)(0×80-0xBF)(0×80-0xBF)
          U-00010000 -
          U-001FFFFF
          4 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 0xF0(0×90-0xBF)(0×80-0xBF)
          (0×80-0xBF)(0xF1-0xF7)(0×80-0xBF)
          (0×80-0xBF)(0×80-0xBF)
          U-00200000 -
          U-03FFFFFF
          5 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
          U-04000000 -
          U-7FFFFFFF
          6 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
          posted on 2006-01-18 21:59 jinfeng_wang 閱讀(642) 評論(0)  編輯  收藏 所屬分類: ZZ
          主站蜘蛛池模板: 富阳市| 康马县| 萝北县| 巴东县| 虹口区| 宜昌市| 新竹县| 应城市| 江孜县| 富平县| 石狮市| 阿拉善左旗| 兴文县| 崇仁县| 黔西| 韶山市| 新昌县| 聊城市| 那曲县| 云霄县| 名山县| 昔阳县| 石狮市| 南部县| 兴文县| 神木县| 大同市| 资溪县| 新野县| 泰宁县| 德安县| 屏南县| 宝应县| 汤阴县| 三明市| 体育| 秦皇岛市| 尖扎县| 汕尾市| 杨浦区| 织金县|