码迷,mamicode.com
首页 > 其他好文 > 详细

UTF-8是现在流行的编码方式,根据规定回答问题

时间:2015-07-31 16:23:54      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:utf-8   编码   unicode   

UTF-8是现在流行的编码方式,下面是RFC2279对UTF-8编码规则的规定
   UCS-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 ... 10xxxxxx
根据这个规则,中文字符‘我’的unicode值为0X6211,utf-8编码之后为0XE68891。 请回答以下问题:<br />

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字节模版 1110xxxx 10xxxxxx 10xxxxxx,将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-8   编码   unicode   

原文地址:http://blog.csdn.net/zyq522376829/article/details/47170349

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!