首頁 >web前端 >js教程 >unicode是什麼

unicode是什麼

清浅
清浅原創
2019-01-26 10:56:1439267瀏覽

Unicode是一種字元編碼方案,它為每種語言中的每個字元都設定了統一唯一的二進位編碼,以實現跨語言、跨平台進行文字轉換、處理的要求

#Unicode意義

Unicode為每個字元提供了一個唯一的數字,不論是什麼平台、不論是什麼程式、不論是什麼語言。它在1994年正式公佈,是電腦領域裡一項業界標準,包括字元集,編碼方案等。 Unicode是為了解決傳統字元編碼方案的限製而產生的,為每種語言中的每個字元都設定了統一唯一的二進位編碼,以實現跨語言、跨平台進行文字轉換、處理的要求。

unicode是什麼

Unicode編碼的發展

#電腦在設計時採用8個位元(bit)作為一個位元組(byte),所以一個位元組最多能表示256個字符,早期對於使用英文的西方國家來說,一個位元組可以儲存大小寫英文字母、數學和一些符號,因此使用一個位元組來製作碼表(ASCII)。後來電腦傳到了其他的國家,很多國家都是使用自己的語言,例如中文、日文、韓文…語言複雜了,為了解決這個問題,每個國家製定自己的碼表,中國在1980年便制定了GB2312漢字編碼字符集,漢字比英文多很多,一個位元組明顯不夠用,所有都使用2個位元組來編碼。然而不同國家所定義的字元編碼雖然可以使用,但是在不同的國家間卻經常出現不相容的情況。如果電腦想處理多語言環境(使用中文或其他語言)可能存在無法同時支援多語言環境。為了統一所有文字的編碼,產生了Unicode,把所有語言的都統一到一套編碼裡,這樣就不會亂碼了。

unicode是什麼

Unicode編碼表示

#在表示Unicode字元時,通常會用U 然後緊跟著一組16進位的數字表示一個字符,編碼從U 0000到U FFFF,共支援6萬多個字符,在BMP

以外的字符則需要使用5位或6位16進位來表示。

目前Unicode字元分為17組編排,0x0000至0x10FFFF,每組稱為平面(Plane),每個面擁有65536個碼位,共1114112個。

Unicode就像一張表,包裝所有的字元都寫到表中,每一個字元對應一個數字,稱為碼點(code point),這個數字一般不直接使用,通

過不同的編碼方式來使用

unicode是什麼

UTF-8、UTF-16、UTF-32就是將數字轉換到程式資料的編碼方案。 UTF是「UnicodeTransformation Format」的縮寫,可以翻譯成

Unicode字元集轉換格式,也就是怎麼將Unicode定義的數字轉換成程式資料

65536-1114111位元0x010000-0x10FFFF11110xxx 10xxxxxx 10xxxxxx 10xxxxxx(21位元)#11110xxx 10xxxxxx 10xxxxxx 10xxxxxx(21位)##
十進位
Unicode編碼
UTF-8位元組流
0-127位元 0x000000-0x00007F 0xxxxxxx(7位元)
128-2047位元
0x000080-0x0007FF #110xxxxx 10xxxxxx(11位元)
2048-65535位元 0x000800-0x00FFFF 1110xxxx 10xxxxxx 10xxx(16位元)#xxx

以上是unicode是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn