UTF 8是現在流行的編碼方式,根據規定回答問題

2021-07-04 05:58:51 字數 1140 閱讀 6049

utf-8是現在流行的編碼方式,下面是rfc2279對utf-8編碼規則的規定

ucs-4 range (hex.)           utf-8 octet sequence (binary)

0000 0000-0000 007f 0******x

0000 0080-0000 07ff 110***xx 10******

0000 0800-0000 ffff 1110***x 10****** 10******

0001 0000-001f ffff 11110*** 10****** 10****** 10******

0020 0000-03ff ffff 111110xx 10****** 10****** 10****** 10******

0400 0000-7fff ffff 1111110x 10****** ... 10******

根據這個規則,中文字元『我』的unicode值為0x6211,utf-8編碼之後為0xe68891。 請回答以下問題:

a)英文本元『a』,其unicode的十六進製制值為0x61,則其utf-8編碼後的十六進製制值為 1?

參***

0x61

b)中文字元『騰』,其unicode的十六進製制值為0x817e,則其utf-8編碼後的十六進製制值為 2?

參***

0xe885be

c)中文字元『訊』,其unicode值經過utf-8編碼之後為0xe8aeaf,則請問其unicode的十六進製制值是 3?

參***

0x8baf

解析:

a、0x61在0x00-0x7f之間,所以和ascii編碼完全相同,所以utf-8編碼後的值還是0x61。

b、0x817e在0x0800-0xffff之間,使用了3位元組模版 1110***x 10****** 10******,將0x817e寫成二進位制1000 0001 0111 1110,用這個位元流依次替代模版中的x,得到11101000 10000101 10111110,即e885be。

c、0xe8aeaf的二進位制為11101000 10101110 10101111是3位元組模版,則unicode二進位制值為1000 1011 1010 1111,十六進製制值為0x8baf。

UTF 8的編碼方式

utf編碼 utf 8就是以8位為單元對ucs進行編碼。從ucs 2到utf 8的編碼方式如下 ucs 2編碼 16進製制 utf 8 位元組流 二進位制 0000 007f 0 x 0080 07ff 110 xx 10 0800 ffff 1110 x 10 10 例如 漢 字的unicode編...

python 檢測是否是UTF 8編碼

utf 8 8 bit unicode transformation format 是一種針對unicode的可變長度字元編碼,又稱萬國碼,由ken thompson於1992年建立。現在已經標準化為rfc 3629。utf 8用1到6個位元組編碼unicode字元。用在網頁上可以統一頁面顯示中文簡...

utf8的編碼演算法

unicode字符集是我們世界上最完善最全面的字符集,幾乎包含了世界上所有的字元。其實可以這麼理解,unicode字符集是一張巨大的 把世界上各種語言的字元和標點符號都編排到裡面,然後按照一定的順序給每個字元排號 很遺憾的是對於中文來說,這個順序不是按照漢語拼音的順序 有了這張巨大的 世界上大部分字...