跟大家講解下有關unicode是什么,相信小伙伴們對這個話題應該也很關注吧,現在就為小伙伴們說說unicode是什么,小編也收集到了有關unicode是什么的相關資料,希望大家看到了會喜歡。
Unicode是一種字符編碼方案,它為每種語言中的每個字符都設定了統一唯一的二進制編碼,以實現跨語言、跨平臺進行文本轉換、處理的要求Unicode含義
Unicode給每個字符提供了一個唯一的數字,不論是什么平臺、不論是什么程序、不論是什么語言。它在1994年正式公布,是計算機領域里一項業界標準,包括字符集,編碼方案等。Unicode是為了解決傳統字符編碼方案的局限而產生的,為每種語言中的每個字符都設定了統一唯一的二進制編碼,以實現跨語言、跨平臺進行文本轉換、處理的要求。
Unicode編碼的發展
計算機在設計時采用8個比特(bit)作為一個字節(byte),所以一個字節最多能表示256個字符,早期對于使用英文的西方國家來說,一個字節可以存儲大小寫英文字母、數學和一些符號,因此使用一個字節來制作碼表(ASCII)。后來計算機傳到了其他的國家,很多國家都是使用自己的語言,比如中文、日文、韓文…語言復雜了,為了解決這個問題,每個國家制定自己的碼表,中國在1980年便制定了GB2312漢字編碼字符集,漢字比英文多很多,一個字節明顯不夠用,所有就使用2個字節來編碼。然而不同國家所定義的字符編碼雖然可以使用,但是在不同的國家間卻經常出現不兼容的情況。如果電腦想處理多語言環境(使用中文或其他語言)可能存在無法同時支持多語言環境。為了統一所有文字的編碼,產生了Unicode,把所有語言的都統一到一套編碼里,這樣就不會亂碼了。
Unicode編碼表示
在表示Unicode字符時,通常會用U+然后緊跟一組16進制的數字表示一個字符,編碼從U+0000到U+FFFF,共支持6萬多個字符,在BMP
以外的字符則需要使用5位或者6位16進制來表示。
目前Unicode字符分為17組編排,0x0000至0x10FFFF,每組稱為平面(Plane),每個面擁有65536個碼位,共1114112個。
Unicode就像一張表,包所有的字符都編寫到表中,每一個字符對應一個數字,稱為碼點(code point),這個數字一般不直接使用,通
過不同的編碼方式來使用
UTF-8、UTF-16、UTF-32就是將數字轉換到程序數據的編碼方案。UTF是“UnicodeTransformation Format”的縮寫,可以翻譯成
Unicode字符集轉換格式,即怎樣將Unicode定義的數字轉換成程序數據
十進制Unicode編碼UTF-8字節流0-127位0x000000-0x00007F0xxxxxxx(7位)128-2047位0x000080-0x0007FF110xxxxx 10xxxxxx(11位)2048-65535位0x000800-0x00FFFF1110xxxx 10xxxxxx 10xxxxxx(16位)65536-1114111位0x010000-0x10FFFF11110xxx 10xxxxxx 10xxxxxx 10xxxxxx(21位)以上就是unicode是什么的詳細內容,更多請關注php中文網其它相關文章!
來源:php中文網