Unicode編碼是什么?
Unicode是一種字符編碼標準,在不同領域的IT中都很常用。 Unicode是國際標準,于1987年創建,是ASCII和其他字符集的替代方法。 截至2020年3月,Unicode字符集版本為13.0,其中包含來自不同語言和字母的143,859個字符。 當前,Unicode字符集包含154種帶有設置和表情符號的現代字母。

Unicode編碼規范制定標準:
把世界上所有能出現的字符,都為其分配一個數字來表示,比如,數字U+7F57被分配給了漢字中的”羅”字。Unicode編碼的標準里字符數量一直實在新增(包括一些稀有字符,當然emoji表情字符也屬于unicode編碼哈哈),19年3月剛發布了Unicode12.0版本,比之前的版本新增了一些字符,現在在標準中的字符一共有137929個,而Unicode編碼目前規劃了U+0000至U+10FFFF為unicode編碼(以世界上字符的數量應該是很久不會考慮擴展的),算一下目前還剩下976183(1114112-137929)個代碼點,這976183個代碼點是規劃在unicode中的數字,但是還沒被分配對應的字符。
UTF-8編碼:
UTF-8可以說是當前互聯網最常用的編碼格式了,它基于Unicode字符集進行編碼設計。它最大的特點是變長字節的編碼設計,一個字符最長4個字節,最少1個字節,大部分的中文字符占3個字節。
編碼規則如下:
1.用一個字節表示的字符,第一位設為 0,后面的 7 位對應這個字符的 Unicode 碼點。由于這128個字符的unicode完全對照ASCII碼,可以說完全向下兼容ASCII碼。即ASCII編碼的文件可以用UTF-8打開而不亂碼;
2.用一個字節以上表示的字符,假設是N個字節表示這個字符:則該字符第一個字節的前N位都為1,第N+1位為0,剩下的N-1個字節的前兩位都設為10,剩下沒有主動設值的位置則使用這個字符的Unicode二進制代碼點從低位到高位填充,不夠用0補足。