天天看點

UTF8 編碼轉換 騰訊

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

4 range (hex.)    UTF-8 octet sequence (binary)
   0000 0000-0000 007F   0xxxxxxx
   0000 0080-0000 07FF   110xxxxx 10xxxxxx
   0000 0800-0000 FFFF   1110xxxx 10xxxxxx 10xxxxxx

   0001 0000-001F FFFF   11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
   0020 0000-03FF FFFF   111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
   0400 0000-7FFF FFFF   1111110x 10xxxxxx ...      

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

A)英文字元‘a’,其unicode的十六進制值為0X61,則其UTF-8編碼後的十六進制值為 ?

B)中文字元‘騰’,其unicode的十六進制值為0X817E,則其UTF-8編碼後的十六進制值為 ?

C)中文字元‘訊’,其unicode值經過UTF-8編碼之後為0XE8AEAF,則請問其unicode的十六進制值是 ?

A、0X61在0X00-0X7F之間,是以和ASCII編碼完全相同,是以UTF-8編碼後的值還是0X61。

B、0X817E在0X0800-0XFFFF之間,使用了3位元組模版 1110xxxx 10xxxxxx 10xxxxxx,将0X817E寫成二進制1000 0001 0111 1110,用這個比特流依次替代模版中的x,得到11101000 10000101 10111110,即E885BE。