Unicode utf-8 utf-16 utf-32 是什么关系呢?

制定字符集的有两个标准unicode 和ucs

Unicode/UCS Transformation Format

 

unicode 下面有utf-8 utf-16 utf-32

 

uft-16 2个字节 代表 一个字

a 啊都是两个字节

UTF-8 需要表示长度 需要加标识位。

用UTF-8就有复杂点.因为此时程序是把一个字节一个字节的来读取,然后再根据字节中开头的bit标志来识别是该把1个还是两个或三个字节做为一个单元来处理.

0xxxxxxx,如果是这样的01串,也就是以0开头后面是啥就不用管了XX代表任意bit.就表示把一个字节做为一个单元.就跟ASCII完全一样.

110xxxxx 10xxxxxx.如果是这样的格式,则把两个字节当一个单元

1110xxxx 10xxxxxx 10xxxxxx 如果是这种格式则是三个字节当一个单元.

 

uft-16 不能满足所有字

又出现 uft-16

 

posted on 2017-02-07 16:21  php超超  阅读(154)  评论(0编辑  收藏  举报