字符集(一)-unicode简介

     定义:Unicode是国际组织制定的可以容纳世界上所有文字和符号的字符编码方案。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。

 

    发展历史:1990年开始研发(基于通用字符集(Universal Character Set)的标准来发展),1994年正式公布。2006年7月的最新版本的 Unicode 是5.0版本。 2005年3月31日推出的Unicode 4.1.0 。另外,5.0 Beta于2005年12月12日推出,5.2版本(unicode standard)于2009年10月1日正式推出,以供各会员评价。目前6.0版本已经马上就要发布。在unicode联盟网站上已经能看到6。.0 预发布的部分章节了。

 

    下面重点介绍Unicode的编码方式。

     Unicode用数字0-0x10FFFF来映射这些字符,最多可以容纳1114112(也就是111多万)个字符,或者说有1114112个码位(也就是说一个码位对应一个字符)。我们假设一个平面可以容纳2^16(等同于256*256的正方形平面)个字符,Unicode计划使用了17个平面,所以一共有17*65536=1114112个码位(1114112就是这么来的)。

 

    然后我们来看平面中具体存放哪些字符。

    在Unicode 5.0.0版本中,已定义的码位只有238605个,分布在平面0、平面1、平面2、平面14、平面15、平面16。其中平面15和平面16上只是定义了两个各占65534个码位的专用区(Private Use Area),分别是0xF0000-0xFFFFD和0x100000-0x10FFFD。所谓专用区,就是保留给大家放自定义字符的区域,可以简写为PUA。 平面0也有一个专用区:0xE000-0xF8FF,有6400个码位。平面0的0xD800-0xDFFF,共2048个码位,是一个被称作代理区(Surrogate)的特殊区域。代理区的目的用两个UTF-16字符表示BMP以外的字符。在介绍UTF-16编码时会介绍。 如前所述在Unicode 5.0.0版本中,238605-65534*2-6400-2408=99089。余下的99089个已定义码位分布在平面0、平面1、平面2和平面14上,它们对应着Unicode目前定义的99089个字符,其中包括71226个汉字。平面0、平面1、平面2和平面14上分别定义了52080、3419、43253和337个字符。平面2的43253个字符都是汉字。平面0上定义了27973个汉字。

 

   好像有个问题:99089个已定义分布的码位其中汉字就占了71226个,其他的字符难道就知只占了27863个? 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Unicode字符集是一种包含了世界上几乎所有字符的编码标准,包括了各种语言的字母、符号、标点、数字等等。它为每个字符分配了一个唯一的数字编号,这个编号被称为Unicode码点。 UTF-8编码是一种将Unicode字符集中的码点转换成字节序列的方法。它是一种可变长度的编码方式,使用1到4个字节来表示不同的字符,其中ASCII字符只需要1个字节,而中文等非ASCII字符则需要2到3个字节。UTF-8编码具有向后兼容性,可以表示Unicode字符集中的所有字符,因此被广泛应用于互联网和计算机系统中。 ### 回答2: Unicode字符集是一种用于描述世界各种语言字符集合的标准规范。Unicode字符集包含了现今世界上大部分语言所使用的字符,包括字母、数字、符号、标点符号以及各种特殊字符。Unicode字符集采用唯一的数字编号来表示每个字符,这些数字被称为“码位”或“码点”。 UTF-8编码是一种针对Unicode字符集的编码方案,可以将Unicode字符集中的每个字符以不同的排列组合方式表示为一组字节,使得这些字符能够在计算机中被存储和传输。UTF-8编码采用可变长度的编码方式,对于不同范围内的字符,采用不同长度的字节表示。例如,对于ASCII字符集中的字符,UTF-8编码只需要用一个字节表示,而对于其他语言的字符,则需要用两个、三个或四个字节来表示。 相比于其他编码方案,UTF-8编码具有许多优势。首先,UTF-8编码能够支持所有的Unicode字符,包括汉字、日语假名、俄文字母和阿拉伯语字母等。其次,UTF-8编码具有良好的兼容性,能够在不同的操作系统、浏览器和编辑器中使用。最后,UTF-8编码还具有节省空间的优势,因为它可以根据字符所在范围的不同动态调整字节的长度,有效地减少字节数,从而节省存储空间和带宽。 总之,Unicode字符集和UTF-8编码是现今计算机技术中使用最广泛的字符集和编码方案。他们为计算机在处理不同语言和字符类型的文本数据时提供了可靠的工具和标准,大大提高了计算机的文本应用能力。 ### 回答3: Unicode是全球字符集,它为世界上几乎所有的符号分配了唯一的标识符。由于计算机只能理解数字,Unicode为每个字符分配了一个唯一的数字,从而使计算机能够正确地显示、存储和处理文本。Unicode字符集由超过128,000个字符组成,其中包括各种字母、数字、标点符号、符号和特殊字符。 UTF-8是一种广泛使用的Unicode编码,它使用1到4个字节来表示每个字符。UTF-8编码使用变长编码方法,这意味着不同字符使用不同数量的字节来表示。对于较小的字符,UTF-8只需要1个字节,而对于较大的字符,UTF-8需要多个字节。这使得UTF-8成为比其他Unicode编码更节省空间和更灵活的编码方式。 在计算机上,文本通常被存储为字节序列。使用Unicode字符集和UTF-8编码可以确保多种语言的文本能够正确存储和处理,从而实现跨语言的通信和交流。今天,大多数操作系统和应用程序都支持Unicode和UTF-8编码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值