欧美人与动牲交a免费,97色伦图区97色伦综合图区,日本 国产成 人 综合 亚洲 http://www.mxio.cn 傳播先進(jìn)設(shè)計理念 推動原創(chuàng)設(shè)計發(fā)展 Sun, 07 Oct 2007 23:50:00 +0000 zh-Hans hourly 1 https://wordpress.org/?v=6.9.1 名詞解釋:Unicode和UTF-8 http://www.mxio.cn/12405.html http://www.mxio.cn/12405.html#respond Sun, 07 Oct 2007 23:50:00 +0000

一直在編碼方面要求不是很高,所以對Unicode和UTF-8也不甚了解。

  最近偶然翻到一篇UTF-8的文章,感覺解釋的非常繁雜,因此才想到重新寫一篇簡單易懂一點的。

  首先說明一下現(xiàn)在常用的一些編碼方案:
  1、在中國,大陸最常用的就是GBK18030編碼,除此之外還有GBK,GB2312,這幾個編碼的關(guān)系是這樣的。

最早制定的漢字編碼是GB2312,包括6763個漢字和682個其它符號
95年重新修訂了編碼,命名GBK1.0,共收錄了21886個符號。
之后又推出了GBK18030編碼,共收錄了27484個漢字,同時還收錄了藏文、蒙文、維吾爾文等主要的少數(shù)民族文字,現(xiàn)在WINDOWS平臺必需要支持GBK18030編碼。

按照GBK18030、GBK、GB2312的順序,3種編碼是向下兼容,同一個漢字在三個編碼方案中是相同的編碼。

  2、臺灣,香港等地使用的是BIG5編碼
  3、日本:SJIS編碼

  如果把各種文字編碼形容為各地的方言,那么Unicode就是世界各國合作開發(fā)的一種語言。
  在這種語言環(huán)境下,不會再有語言的編碼沖突,在同屏下,可以顯示任何語言的內(nèi)容,這就是Unicode的最大好處。

  那么Unicode是如何編碼的呢?其實非常簡單。
  就是將世界上所有的文字用2個字節(jié)統(tǒng)一進(jìn)行編碼??赡苣銜?,2個字節(jié)最多能夠表示65536個編碼,夠用嗎?
  韓國和日本的大部分漢字都是從中國傳播過去的,字型是完全一樣的。
  比如:“文”字,GBK和SJIS中都是同一個漢字,只是編碼不同而已。
  那樣,像這樣統(tǒng)一編碼,2個字節(jié)就已經(jīng)足夠容納世界上所有的語言的大部分文字了。

  Unicode的學(xué)名是”Universal Multiple-Octet Coded Character Set”,簡稱為UCS。
  現(xiàn)在用的是UCS-2,即2個字節(jié)編碼,而UCS-4是為了防止將來2個字節(jié)不夠用才開發(fā)的。UCS-2也稱為基本多文種平面。
  UCS-2轉(zhuǎn)換到UCS-4只是簡單的在前面加2個字節(jié)0。
  UCS-4則主要用于保存輔助平面,例如Unicode 4.0中的第二輔助平面
  20000-20FFF – 21000-21FFF – 22000-22FFF – 23000-23FFF – 24000-24FFF – 25000-25FFF –   26000-26FFF – 27000-27FFF – 28000-28FFF – 29000-29FFF – 2A000-2AFFF – 2F000-2FFFF
  總共增加了16個輔助平面,由原先的65536個編碼擴展至將近100萬編碼。

  那么既然統(tǒng)一了編碼,如何兼容原先各國的文字編碼呢?
  這個時候就需要codepage了。
  什么是codepage?codepage就是各國的文字編碼和Unicode之間的映射表。
  比如簡體中文和Unicode的映射表就是CP936,點這里查看官方的映射表。

  以下是幾個常用的codepage,相應(yīng)的修改上面的地址的數(shù)字即可。
codepage=936 簡體中文GBK
codepage=950 繁體中文BIG5
codepage=437 美國/加拿大英語
codepage=932 日文
codepage=949 韓文
codepage=866 俄文
codepage=65001 unicode UFT-8

最后一個65001,據(jù)個人理解,應(yīng)該只是一個虛擬的映射表,實際只是一個算法而已。

從936中隨意取一行,例如:
0x9993 0x6ABD #CJK UNIFIED IDEOGRAPH
前面的編碼是GBK的編碼,后面的是Unicode。
通過查這張表,就能簡單的實現(xiàn)GBK和Unicode之間的轉(zhuǎn)換。


  現(xiàn)在明白了Unicode,那么UTF-8又是什么呢?又為什么會出現(xiàn)UTF-8呢?

  ASCII轉(zhuǎn)換成UCS-2,只是在編碼前插入一個0x0。用這些編碼,會包括一些控制符,比如 或 /,這在UNIX和一些C函數(shù)中,將會產(chǎn)生嚴(yán)重錯誤。因此可以肯定,UCS-2不適合作為Unicode的外部編碼。

  因此,才誕生了UTF-8。那么UTF-8是如何編碼的?又是如何解決UCS-2的問題呢?

例:
E4 BD A0        11100100 10111101 10100000
這是“你”字的UTF-8編碼
4F 60          01001111 01100000
這是“你”的Unicode編碼

按照UTF-8的編碼規(guī)則,分解如下:xxxx0100 xx111101 xx100000
把除了x之外的數(shù)字拼接在一起,就變成“你”的Unicode編碼了。
注意UTF-8的最前面3個1,表示整個UTF-8串是由3個字節(jié)構(gòu)成的。
經(jīng)過UTF-8編碼之后,再也不會出現(xiàn)敏感字符了,因為最高位始終為1。

以下是Unicode和UTF-8之間的轉(zhuǎn)換關(guān)系表:

U-00000000 – U-0000007F: 0xxxxxxx
U-00000080 – U-000007FF: 110xxxxx 10xxxxxx
U-00000800 – U-0000FFFF: 1110xxxx 10xxxxxx 10xxxxxx
U-00010000 – U-001FFFFF: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
U-00200000 – U-03FFFFFF: 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
U-04000000 – U-7FFFFFFF: 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx

Unicode編碼轉(zhuǎn)換到UTF-8,簡單的把Unicode字節(jié)流套到x中就變成UTF-8了。

]]>
http://www.mxio.cn/12405.html/feed 0
主站蜘蛛池模板: 狠狠色欧美亚洲狠狠色www| 韩国三级+mp4| 99国产精品欧美一区二区三区| 亚洲av成人无码天堂| yyyy11111少妇无码影院| 人妻少妇88久久中文字幕| 日本熟妇人妻中出| 色综合色综合久久综合频道| 欧美人牲交免费观看| 91麻豆国产精品91久久久| 色宅男看片午夜大片啪啪| 亚洲中文字幕无码永久在线| 久久精品国产亚洲av热一区| 国产精品美女久久久久av爽李琼 | 大胸美女吃奶爽死视频| 精品一区二区三区在线播放视频| 国产黄色看三级三级三级| 免费福利视频一区二区三区高清 | 一本大道香蕉中文日本不卡高清二区| 在线资源天堂www| 久久人妻av一区二区软件| 孕妇特级毛片ww无码内射| 中文字幕66页| 无码专区中文字幕无码| 99在线小视频| 亚洲制服丝袜中文字幕自拍| 国产AV国片精品有毛| 大香线蕉伊人超碰| 国产真实精品久久二三区| 国产午夜亚洲精品久久| 日韩成人高精品一区二区| 久久青草国产免费频观| 日韩有码中文在线观看| 高清无码视频直接看| 国产精品青青在线观看爽香蕉| 熟妇高潮喷沈阳45熟妇高潮喷| 综合激情网一区二区三区| 无码人妻丰满熟妇奶水区码| 国产精品久久久久久久伊一| 亚洲人成色7777在线观看不卡| 国产一区二区色婬影院|