unicode、nls、 utf-8,这三种字符集有什么关系?

 我来答
kytrip
2012-06-25
知道答主
回答量:11
采纳率:0%
帮助的人:12.6万
展开全部
Unicode是一种字符集,和ascii是同一个概念,而UTF是一种存储方式(格式)

Unicode只是一个字符集,它只规定了符号的二进制代码,每个字符都使用2个字节来存储,没有实现存储方法。
UTF-8是将字符对应的unicode十六进制进行存储,存储的字节可能是1、2、3、4个字节。它是Unicode的实现方式之一,其它还有UTF-16、UTF-32

UTF-8最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度。

UTF-8的编码规则很简单,只有二条:
对于单字节的符号,字节的第一位设为0,后面7位为这个符号的unicode码。因此对于英语字母,UTF-8编码和ASCII码是相同的。
对于n字节的符号(n>1),第一个字节的前n位都设为1,第n+1位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的unicode码。
下表总结了编码规则,字母x表示可用编码的位。

Unicode符号范围 | UTF-8编码方式
(十六进制) | (二进制)
——————————————————————
0000 0000 - 0000 007F | 0xxxxxxx
0000 0080 - 0000 07FF | 110xxxxx 10xxxxxx
0000 0800 - 0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx
0001 0000 - 0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

NLS:National Language Support ,顾名思义,是本地语言支持,其本身不是一种编码或字符集
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式