unicode含义
unicode给每个字符提供了一个唯一的数字,不论是什么平台、不论是什么程序、不论是什么语言。它在1994年正式公布,是计算机领域里一项业界标准,包括字符集,编码方案等。unicode是为了解决传统字符编码方案的局限而产生的,为每种语言中的每个字符都设定了统一唯一的二进制编码,以实现跨语言、跨平台进行文本转换、处理的要求。
unicode编码的发展
计算机在设计时采用8个比特(bit)作为一个字节(byte),所以一个字节最多能表示256个字符,早期对于使用英文的西方国家来说,一个字节可以存储大小写英文字母、数学和一些符号,因此使用一个字节来制作码表(ascii)。后来计算机传到了其他的国家,很多国家都是使用自己的语言,比如中文、日文、韩文…语言复杂了,为了解决这个问题,每个国家制定自己的码表,中国在1980年便制定了gb2312汉字编码字符集,汉字比英文多很多,一个字节明显不够用,所有就使用2个字节来编码。然而不同国家所定义的字符编码虽然可以使用,但是在不同的国家间却经常出现不兼容的情况。如果电脑想处理多语言环境(使用中文或其他语言)可能存在无法同时支持多语言环境。为了统一所有文字的编码,产生了unicode,把所有语言的都统一到一套编码里,这样就不会乱码了。
unicode编码表示
在表示unicode字符时,通常会用u+然后紧跟一组16进制的数字表示一个字符,编码从u+0000到u+ffff,共支持6万多个字符,在bmp
以外的字符则需要使用5位或者6位16进制来表示。
目前unicode字符分为17组编排,0x0000至0x10ffff,每组称为平面(plane),每个面拥有65536个码位,共1114112个。
unicode就像一张表,包所有的字符都编写到表中,每一个字符对应一个数字,称为码点(code point),这个数字一般不直接使用,通
过不同的编码方式来使用
utf-8、utf-16、utf-32就是将数字转换到程序数据的编码方案。utf是“unicodetransformation format”的缩写,可以翻译成
unicode字符集转换格式,即怎样将unicode定义的数字转换成程序数据
十进制
unicode编码
utf-8字节流
0-127位 0x000000-0x00007f 0xxxxxxx(7位)
128-2047位
0x000080-0x0007ff 110xxxxx 10xxxxxx(11位)
2048-65535位 0x000800-0x00ffff 1110xxxx 10xxxxxx 10xxxxxx(16位)
65536-1114111位 0x010000-0x10ffff
11110xxx 10xxxxxx 10xxxxxx 10xxxxxx(21位)
以上就是unicode是什么的详细内容。
