正在进行安全检测...
时间:2023-11-15 18:21:53 下载该word文档
Unicode字符集和多字节字符集关系
创建时间:2011/11/1811:55更新时间:2011/11/1811:55
来源:http://www.iteye.com/topic/575299
在计算机中字符通常并不是保存为图像,每个字符都是使用一个编码来表示的,而每个字符究竟使用哪个编码代表,要取决于使用哪个字符集(charset。在最初的时候,Internet上只有一种字符集——ANSI的ASCII字符集,它使用7bits来表示一个字符,总共表示128个字符,其中包括了英文字母、数字、标点符号等常用字符。之后,又进行扩展,使用8bits表示一个字符,可以表示256个字符,主要在原来的7bits字符集的基础上加入了一些特殊符号例如制表符。后来,由于各国语言的加入,ASCII已经不能满足信息交流的需要,因此,为了能够表示其它国家的文字,各国在ASCII的基础上制定了自己的字符集,这些从ANSI标准派生的字符集被习惯的统称为ANSI字符集,它们正式的名称应该是MBCS(Multi-ByteChactacterSystem,即多字节字符系统。这些派生字符集的特点是以ASCII127bits为基础,兼容ASCII127,他们使用大于128的编码作为一个LeadingByte,紧跟在LeadingByte后的第二(甚至第三)个字符与LeadingByte一起作为实际的编码。这样的字符集有很多,我们常见的GB-2312就是其中之一。例如在GB-2312字符集中,“连通”的编码为C1ACCDA8,其中C1和CD就是LeadingByte。前127个编码为标准ASCII保留,例如“0”的编码是30H(30H表示十六进制的30)。软件在读取时,如果看到30H,知道它小于128就是标准ASCII,表示“0”,看到C1大于128就知道它后面有一个另外的编码,因此C1AC一同构成一个整个的编码,在GB-2312字符集中表示“连”。由于每种语言都制定了自己的字符集,导致最后存在的各种字符集实在太多,在国际交流中要经常转换字符集非常不便。因此,提出了Unicode字符集,它固定使用16bits(两个字节、一个字)来表示一个字符,共可以表示65536个字符。将世界