几种文字编码的介绍

自己综合的几个摘录
--shappy

目前使用的简体系统,从win95开始就使用了GBK码,可以支持解体和繁体的显示;而香港、台湾使用的繁体系统采用的是BIG5码,两种编码互不相同,其中GB和BIG5码都是GBK码的子集,所以两个系统中使用的文本在另一个系统中就会变成乱码或其他字。所谓内码转换一般就是GB码和BIG5码之间的转换,这也是简繁体系统公用数据库的解决方案的基础,但是数据库中也有一些不同,主要是跟数据库访问对象的内码处理有关。比如说:使用繁体系统的甲在数据库里面输入了繁体的:“

名词解释:
1 GB2312-80(国标码)

  GB2312码是中华人民共和国国家汉字信息交换用编码,全称《信息交换用汉字编码字符集--基本集》,由国家标准总局发布,1981年5月1日实施,通行于大陆。新加坡等地也使用此编码。

  GB2312收录简化汉字及符号、字母、日文假名等共7445个图形字符,其中汉字占6763个。
  GB2312的编码范围为2121H-777EH,与ASCII有重叠,通行方法是将GB码两个字节的最高位置1以示区别。

2 BIG5(大五码)

  BIG5是通行于台湾、香港地区的一个繁体字编码方案。虽然存在一些瑕疵,但广泛应用于电脑行业,尤其是互联网中,从而成为一种事实上的行业标准。
  BIG5码是双字节编码方案,其中第一个字节的值在OXAO-OXFE之间,第二个字节在OX40-OX7E和OXA1-OXFE之间。
  BIG5收录13461个汉字和符号,包括:
符号408个,编码位置A140-A3BE
常用字5401个,编码位置A440-C67E,包括台湾教育部颁布的《常用国字标准字体表》的全部汉字4808个,台湾教科书常用字587个,异体字6个。
次常用字7652个,编码位置C940-F9D5,包括台湾教育部颁布的《次常用国字标准字体表》的全部汉字6341个,《罕用国字标准字体表》中使用频率较高的字1311个。

3 GBK(大字符集)

  GB2312-80仅收汉字6763个,这大大少于现有汉字,随着时间推移及汉字文化的不断延伸推广,有些原来很少用的字,现在变成了常用字。  为了解决这些问题,以及配合UNICODE的实施,全国信息技术化技术委员会于1995年12月1日《汉字内码扩展规范》。GBK向下与GB2312完全兼容,向上支持ISO 10646国际标准,在前者向后者过渡过程中起到的承上启下的作用。GBK 亦采用双字节表示,总体编码范围为8140-FEFE之间,首字节在81-FE之间,尾字节在40-FE之间,剔除XX7F一条线。
  GBK共收入21886个汉字和图形符号,包括:
GB2312中的全部汉字、非汉字符号。
BIG5中的全部汉字。
与ISO 10646相应的国家标准GB13000中的其它CJK汉字,以上合计20902个汉字。
其它汉字、部首、符号,共计984个。
--------------------------------------------------------------------------------

  
16. 据说 Unicode 不是一组好的中文字集 (character set) ? Chinese! 
Unicode 定组织 (Unicode Consortium) 是许多的公司联合决定定一个包含全世界所有文字 的巨大字集,
其中也有亚洲的公司参与。例如:Fujitsu and Fuji Xerox 公司。 该组织取用 ISO 10646 字集然後加
入其他的资讯:标准名称及 特性。 Unicode 包含 GB2312 中所有的字及(可能) Big5 码中所有的字。 
而且加入了许多其他语言的文字。(ISO 10646 有几种编码方式: UTF-8 是 8-bit 的,而 UTF-16 是 
16-bit。 Unicode 是 UTF-16 的形式。 

因此 Unicode 比 Big5 及 GB2312 码好 - 因为 Unicode 包含较多的字。 

但是 ISO 10646 码有下列问题: 

UTF-16 或 Unicode 是 16-bit 固定长度的编码,并没有比 Big5 或 GB2312 码提供更大的容纳空间。
而 8-bit 不定长 (variable-length) 的编码,每个中文字使用 3 个位元组 (byte)。 这意味着使用 
UTF-8 编码的 XML 档案会比使用 Big5 码的档案大上 50%。但是假如使用 ASCII 码的标示 (Markup),
档案就不会大这麽多了。 标示大约会占文件的 50%。可能要使档案大小减少的方式就是采用 档案压缩了。 
ISO 10646 码中,字的顺序与任何的中文码并不同。无法使用一个 简单的演算法 (algorithm) 就可以
将 Big5 或 GB2312 码转换为 ISO 10646。您得用一个转换表来进行转码。但另一方面,ISO 10646 码的
中文字序有利於排序 (sorting)。而且也去除了重字,因而 对於检索 (searching) 也有帮助。(据说
 GBK 字集包含 ISO 10646 码中所有的字,而且保留与 GB2312 码相同的字序。在某些情形下 可能是个
 好字集。) 
这就是为何 XML 档不一定要用 UTF-8 或 UTF-16 编码的原因。 您可以使用 Big5 或 GB2312 码。但是
很少 XML 软体工具支援 这些中文字码。所以建议您,以长远眼光来探讨,最好是转移到 UTF-8 或 UTF-16。 
--------------------------------------------------------------------------------
20. 什麽是 Big5/GCCS, EUDC 及 Big5+ 码 ? 
(1998-12-31) 

EUDC (Extended User-defined Characters) 是香港地区定的一组 标准使用者造字
 (user-defined characters)。(日文称为 gaiji)?这些字包含 R&D EUDC, HKUST EUDC 及 GCCS EUDC。 

Big5 码是在台湾定的,这些繁体字也在香港使用。但在香港有些字很少在 在台湾使用,因些香港政
府将 Big5 字集再加上 3049 个字定为 "政府中文字 集" (Government Chinese Character Set, GCCS),
目前已广为使用中。 

台湾的行政院研究发展考核委员会(研考会)委中文电脑推广基金会(中推会) 进行 Big5 码字集扩编,
约为 24,066 字,称为 Big5+ 码。 

请注意:Big5/GCCS, EUDC 及 Big5+ 码并未在 IANA 册编码名称供 在 Internet 上使用。

GCCS是香港政府颁布的类似于字体的一个扩展集合,扩大了原来台湾编写的Big5编码范围,加入一些香港常用的繁体字,如果你发现有的繁体字无法显示或出现问题,可以安装这个包试试,它不是一种代码,可以视为字体扩展,把原来一些未定义的内码用新的文字显示而已。

--shappy

 

 

posted on 2007-05-14 09:51  shappy  阅读(2851)  评论(1编辑  收藏  举报

导航