汉字编码,GB2312、GB 13000、GBK、GB18030 介绍

1GB2312GB 13000GBKGB18030介绍

GB 2312:又称为 GB 2312-80,是一个简体中文字符集的中国国家标准,于1980年由中国国家标准总局发布,198151日实施,全称为《信息交换用汉字编码字符集基本集》,规定了6763个汉字和682个非汉字图形。

GB 13000:为了便于多个文种的同时处理,国际标准化组织下属编码字符集工作组研制了新的编码字符集标准,ISO/IEC 10646。该标准第一次颁布是在1993年,当时只颁布了其第一部分,即ISO/IEC 10646.1: 1993,我国相应的国家标准是GB 13000.1-93《信息技术 通用多八位编码字符集(UCS)第一部分:体系结构与基本多文种平面》。

制定这个标准的目的是对世界上的所有文字统一编码,以实现世界上所有文字在计算机上的统一处理。

GBK:随着信息技术在各行业应用的深入,GB 2312收录汉字数量不足的缺点已经初步显露出来。例如:""字现在是高频率使用字,而GB 2312 却没有为它编码,因而,政府、新闻、出版、印刷等行业和部门在使用中感到十分不便。1995年,全世界大多数的PC操作系统都实现了16/32位。GB 13000.1的实现出现了一线曙光。一方面为了对 GB 2312进行扩充,一方面顺应当时技术的发展向 GB 13000.1推进,同时兼顾当时最广泛采用 GB 2312内码系统。原电子部和原国家技术监督局联合颁布了指导性技术文件《汉字内码扩展规范》1.0版,即GBK

GBK的内码系统中,GB 2312汉字所在码位保持不便,这样,保证了 GBK GB 2312的完全兼容。同时,GBK内码与 GB 13000.1代码一一对应,为 GBK GB 13000.1的转换提供了解决办法。

微软对 GB 2312的扩展,也就是 CP936字码表 (Code Page 936)的扩展(原来的CP936 GB 2312-80 一模一样),最初出现于Windows 95 简体中文版中。

注意 GBK并非国家正式标准,只是国家技术监督局标准化司、电子工业部科技与质量监督司发布的技术规范指导性文件。虽然GBK 收录了所有Unicode 1.1 GB 13000.1-93 之中的汉字,但是编码方式与Unicode 1.1 GB 13000.1-93 不同。仅仅是GB 2312 GB 13000.1-93 之间的过渡方案。

GB 18030-20001995年之后的实践表明,GBK作为行业规范,缺乏足够的强制力,不利于其本身的推广,而我们寄予厚望的 GB 13000的实现又脚步缓慢,现有汉字编码字符集标准已经不能满足我国信息化建设的需要。

为此,原国家质量技术监督局和信息产业部组织专家制定发布了新的编码字符集标准,GB 18030-2000《信息技术 信息交换用汉字编码字符集 基本集的扩充》。

GB 18030-2000 收录了ISO/IEC 10646.1: 2000的全部27484CJK 统一汉字,13个表意文字描述符、部分汉字部首和部件、欧元符号。在编码体系上,GB 18030统一了内码和交换码的概念。它完全兼容 GB 2312GBK 的编码体系,继承 GBK 的代码映射表的优点,解决了 GB 18030GB 13000之间的代码转换。

GB 18030-2005:全称:国家标准 GB 18030-2005《信息技术中文编码字符集》,是中华人民共和国目前最新的内码字符集,是GB 18030-2000《信息技术 信息交换用汉字编码字符集基本集的扩充》的修订版。与GB 2312-1980 完全兼容,与GBK 基本兼容,支持GB 13000Unicode的全部统一汉字,共收录汉字70244个。

2GB 18030的优点

1)编码汉字数量大

与西方文字不同,汉字是表意文字,成千上万的不同含义需要成千上万的不同汉字来表示。西方文字主要是拼音文字,通过几十个字母的组合就可以变出成千上万的单词。在计算机里面,西方文字只需要给几十个字母编码就够了,而每一个汉字都要一个编码才行。根据专家的统计,一般中文应用系统需要13,000个左右的汉字,大型中文应用系统需要23,000个左右的汉字,政府机关的专用中文应用系统需要48,000个左右的汉字,而图书馆用的中文应用系统需要的汉字可能超过10万。GB 18030-2000达到了27484个汉字,基本上可以满足目前政府机关内部工作、政府机关的网上工作、电子商务、以及其他网上服务行业的需要。此外,GB 18030还提供了13汉字结构符和一些汉字部件,为某些尚未编码的汉字的解决提供了方案。不仅如此,GB 18030建立的编码体系提供了超过150万个编码位置的编码空间,为未来增补汉字作了充分准备。一旦本标准得到实现,类似""字的人名、地名在计算机输入中遇到的困难将越来越少,直至最终完全解决。

2)对GB 2312GBKGB 13000的兼容

GB 18030通过提供完整、清晰、明确的代码映射表,采用GB 18030的计算机系统可以轻易地识别和处理GB 2312GBK编码,降低了系统改造/升级的成本。如果未来需要采用GB 13000,则通GB 18030GB 13000代码的映射表可以轻松地在二者之间进行转换。

3)对字符编码技术的发展的贡献

在现有系统中,字符编码空间十分有限,例如:GBK只提供了23940个编码位置。GB 18030通过对编码空间的扩展提供了超过160万个编码位置(23949+1587600)。可以自信地说,不仅我国所有汉字都可以在这个标准里面编码,而且我国所有少数民族文字也可以在这个标准里面编码,从此不必再担心编码空间不足的问题了。

4)对标准的用户自定义区和标准保留区的使用做了明确、详细的规定

根据经验,标准或规范的使用者往往误以为标准的用户自定义区和标准保留区可以任意使用,完全自由,因而在标准、规范的实现中自作主张,各按所需使用。实践证明,这种做法非常危险,造成的后果十分严重。GB 18030在研制中充分考虑了标准的用户自定义区和标准表留区的问题,明确而详细规定了其使用方法,要求所有标准实现者必须按照标准做,彻底杜绝了类似问题的再次出现。

5)强制性国家标准

直到不久之前,还经常有人抱怨编码的汉字太少了,只有GB 23126763个汉字,不能满足使用要求。而此时,收录了20954个汉字的GBK早已发布并在一些操作系统上实现多年了。经过调查发现:由于GBK是个行业规范,缺乏足够的强制力,很多软件开发商并不实现这个规范。而产品的最终用户由于不知道还有这样一个规范,不知道要求软件开发商来实现它。而GB 18030是个强制性标准,解决了这个问题。首先,软件开发商不得不重视标准,实现标准。其次,标准的知名度要大大高于规范的知名度,而强制性标准的知名度更高。中文软件的最终用户知道了由一个两万七千汉字的标准,就会要求软件开发商来实现。

3、国标码(国家标准代码)

国家标准代码,简称国标码,是中国的中文常用汉字编码集,也被新加坡采用。

现在 GB 18030为中国强制性国家标准,但较旧的计算机仍然使用 GB 2312

一,较常见的国家汉字标准代码列表:

GB 2312-80

信息交换用汉字编码字符集基本集(又称为GB0

GB 13000-93

信息技术 通用多八位编码字符集(UCS)第一部分

GB 18030-2005

信息技术 中文编码字符集

二,其他中华人民共和国发布有关汉字标准代码列表:

GB/T 12345 - 90

信息交换用汉字编码字符集第一辅助集(又称为GB1

GB/T 7589 - 87

信息交换用汉字编码字符集第二辅助集(又称为GB2

GB 13131 - 91

信息交换用汉字编码字符集第三辅助集(又称为GB3

GB/T 7590 - 87

信息交换用汉字编码字符集第四辅助集(又称为GB4

GB 13132 - 91

信息交换用汉字编码字符集第五辅助集(又称为GB5

GB/T 16500 - 1998

信息交换用汉字编码字符集第七辅助集

国家推荐标准以 "/T"来表示并非强制执行。

由于GB 2312-80只收录了6763个汉字,未能覆盖繁体中文字、部分人名、方言、古汉语等方面出现的罕用字,所以发布了以上的辅助集。

其中,GB/T 12345-90辅助集是GB 2312-80基本集的繁体字版本;GB 13131-91GB/T 7589-87的繁体字版本;GB 13132-91GB/T 7590-87的繁体字版本。而GB/T 16500-1998是繁体字版本,它并无对应的简体字版本。

鉴于第二辅助集及第四辅助集,有不少汉字均是类推简化汉字,实用性不高,因而较少人采用,而且没有收入 通用字符集ISO/IEC 10646 标准中。

中国国家标准总局于2000年推出强制性的GB 18030-2000标准。于2001831日后发布或出厂的产品,必须符合GB 18030-2000的相关要求。这个标准的最新版本是GB 18030-2005,它的2字节部分是强制性的。

4BIG5繁体中文字符集

Big5,又称为大五码或五大码,是使用繁体中文的地区中常用的电脑汉字字符集标准,共收录13060个汉字,2003年,新版本发布,称为Big5-2003

Big5 常用于台湾、香港与澳门等使用繁体中文的地区,倚天中文系统、Windows等主要系统的字符集都是以 Big5为基准,但厂商又各自增删,衍生成多种不同版本。

中文电脑流行后,由于很多字被认为是异体字而未被收录。例如常见的人名用字((歌手张柏芝)、(歌手陶喆)等),虽被中文社会广泛采用,也没有收录到Big5 之中。在互联网上,常看到人们把堃、煊、喆等字,写成为方方土火宣吉吉等写法。电视上日本动画的中文字幕中也会看到像木坚这样的字。

由于各厂商及政府推出的 Big5延伸,彼此互不兼容,造成乱码问题。因为 Unicode能正确地处理七万多个汉字,近年的操作系统和应用程序(如苹果电脑Mac OS X 和以Cocoa API 编写的程序、Microsoft Windows 2000及之后版本、Microsoft Office 2000及之后版本、Mozilla浏览器、Internet Explorer浏览器、Java语言等等),已改用Unicode 编码。可惜现时仍有一些旧的软件(Visual Basic 6、部分Telnet BBS 软件),未能支持Unicode 编码,所以预计Big5 缺字的问题仍会困扰用户一段时间,直到所有程序都能改用Unicode 为止。

三、Unicode标准万国码相关介绍

1Unicode介绍

在计算机科学领域中,Unicode(统一码、万国码、单一码、标准万国码)是业界的一种标准,包含了超过十万个字符。

Unicode 的开发结合了国际标准化组织(ISO )所制定的ISO/IEC 10646,即通用字符集(Universal Character Set,简称UCS )。UnicodeISO/IEC 10646在编码的运作原理相同,但 The Unicode Standard包含了更详尽的实现资讯、涵盖了更细节的主题,诸如字符编码(bitwise encoding)、校对以及呈现等。The Unicode Standard 也列举了诸多的字符特性,包含了那些必须支持双方向呈现的文字。Unicode ISO/IEC 10646 两个标准在术语上的使用有些微的不同。

Unicode 是由于传统的字符编码方式的局限性而产生的,例如ISO 8859 所定义的字符虽然在不同的国家中广泛地使用,可是在不同国家间却经常出现不相容的情况。很多传统的编码方式都具有一个共同的问题,即其允许电脑进行双语环境的处理(通常使用拉丁字母以及其本地语言),但却无法同时支持多语言环境的处理(指可同时处理混合多种语言的情况)。

Unicode 在字符集的成功,使其得以在电脑软件的国际化与本地化领域中,广泛且具优势的被采用。这标准已在近年来的多种新科技当中被加以采用,包含了可扩展置标语言(XML)、Java编程语言、以及新的操作系统中。

Unicode 组织(The Unicode Consortium)是由一个非营利性的机构所运作,位于美国加州的Unicode 组织允许任何愿意支付会员费用的公司或是个人加入,其成员包含了主要的电脑软硬件厂商,例如奥多比系统(Adobe Systems)、苹果公司(Apple)、惠普(HP)、IBM、微软(Microsoft)、全录(Xerox)等。

2Unicode截至目前为止历次的版本与发布时间如下:

· Unicode 1.0199110

· Unicode 1.0.119926

· Unicode 1.119936

· Unicode 2.019977

· Unicode 2.119985

· Unicode 2.1.219985

· Unicode 3.019999月;涵盖了来自ISO 10646-1的十六位元通用字符集(UCS)基本多文种平面(Basic Multilingual Plane

· Unicode 3.120013月;新增从ISO 10646-2定义的辅助平面(Supplementary Planes)

· Unicode 3.220023

· Unicode 4.020034

· Unicode 4.0.120043

· Unicode 4.120053

· Unicode 5.020067

· Unicode 5.120084

3UTF-8介绍

UTF-88位通用字符集/Unicode转换格式)是针对Unicode 的一种可变长度字符编码。它可以用来表示Unicode 标准中的任何字符,而且其编码中的第一个字节仍与ASCII 相容,使得原来处理ASCII 字符的软件无需或只作少部份修改后,便可继续使用。因此,它逐渐成为电子邮件、网页及其他储存或传送文字的应用中,优先采用的编码。

因特网工程工作小组(IETF)要求所有因特网协议都必须支持UTF-8 编码。互联网邮件联盟(IMC)建议所有电子邮件软件都支持UTF-8编码。

四、GB 13000GB 18030Unicode之间的比较

本节内容引用自全国信息技术标准化技术委员会的技术文件。不代表本站观点。

原文地址:http://www.nits.gov.cn/sc2/jishufile1-3.asp

GB 2312相比,上面提到的其它几种标准/规范的字汇要大的多,在广义上都可以称为"大字符集",显然优于GB 2312。因此,下面的比较将不包括GB 2312。由于GBK已经为GB 18030取代,下面的比较将在GB 13000GB 18030Unicode规范之间进行。

1、技术

三者的编码空间都十分庞大:GB 18030的编码位置超过了1,600,000个,ISO/IEC 10646Unicode规范的编码位置更高达2,147,483,648个。就编码空间来说,无论哪一个标准,都可以绰绰有余地容纳世界上所有文字在其中编码。因此,三个标准在编码空间大小上没有优劣之分。

三者的字汇都十分巨大:GB 18030力图为全部汉字和我国所有少数民族文字编码,ISO/IEC 10646Unicode规范力图为世界上所有文字编码。因此,前者具有更强的针对性,后者具有更强的通用性。三者都采用了四字节的编码方式:为了扩大编码空间,增加编码位置,必须采用多字节编码方式。ISO/IEC 10646Unicode规范通过在基本多文种平面划出"代理区"映射辅助平面的方式实现四字节编码,GB 13000通过0x300x39码位实现编码空间扩展,达到四字节。由于GB 18030采用了双字节和四字节的混合排列,因此在标准的实现过程中略微复杂一些。

在我国,GB 18030具有更好的兼容性:GB 18030完全解决了对采用GB 2312GBK编码的文档的兼容问题,实现了旧有编码体系向新的编码体系的平滑过渡;同时,GB 18030通过映射表方式解决了它与ISO/IEC 10646以及Unicode规范之间的代码转换问题。而ISO/IEC 10646Unicode规范由于其全球通用性要求,无法全面解决兼容性问题。

2、管理

GB 18030是我国独立研制的编码字符集标准,目的是满足我国国内对文字编码的需要。标准的修订和解释由我国有关管理部门和技术专家掌握,根据技术发展和使用需要,我们随时可以修订该标准,具有很高的自主权。

ISO/IEC 10646是在ISO/IEC JTC1领导下由各国专家共同制定的国际标准。自八十年代中期以来,我国一直积极参加该标准的研制和修订工作。特别是在该标准汉字部分的研制和修订工作 中,我国担任着汉字工作组的召集人和主编,具有很大的影响力。

Unicode规范是一个由产业界部分有影响的公司起草的规范性文件,它的研制和修订由Unicode组织掌握。换句话说,少数国外大公司完全控制了Unicode规范的制定和产品实现的进程。我国的信息技术和信息产业尚未发展成熟,对Unicode规范施加影响是十分困难的,即使是在汉字部分,我们的影响力也十分有限。

3、结论

综上所述,GB 18030ISO/IEC 10646GB 13000)和Unicode规范在技术上都十分优秀。从我国信息技术和信息产业发展的角度考虑,无论采用GB 18030还是ISO/IEC 10646都十分有利,而在我国采用Unicode规范显然是不合适的。考虑到解决我国用户的需要和解决旧有系统的兼容性问题,以及信息安全的要求,目前采用GB 18030是较为有利的选择。

五、选择合适的版本

由此可以得出结论: 

如果是简体中文用户,由于GBK已经为GB 18030取代,采用GB 18030是较为有利的选择,如果产品没有GB 18030 版本,可以采用GBK 中国行业规范的版本。如果有多语言环境的需要,推荐采用ISO/IEC 10646GB 13000)。在我国采用Unicode规范显然是不合适的。如果产品没有GB 13000 版本,可以采用Unicode 国外行业规范的版本。建议使用简体UTF-8版本。

如果是繁体中文用户,建议使用繁体UTF-8版本。

注意:安装 Comsenz康盛创想旗下的各个产品,要选择相同的字符集版本,比如首先安装 UTF-8版本的 UCenter,然后安装 UTF-8版本的 Discuz!,这样才能够正常使用。


 

六,汉字区位码

 
汉字区位码是采用一种科学可行的办法,为每个汉字编一个唯一的代码,以便计算机辨认、接收和处理
简介
所谓汉字编码,就是采用一种科学可行的办法,为每个汉字编一个唯一的代码,以便计算机辨认、接收和处理。在此介绍的是《国家标准信息交换汉字编码》。这种编码经过加工整理一律以汉语拼音的字母为序,音节相同的字以使用频率为序,其查找方法与一般汉语字典的汉字拼音音节索引查找法相同。

国家标准

编辑
为了使每一个汉字有一个全国统一的代码,1980年,我国颁布了第一个汉字编码的国家标准:  GB2312-80信息交换用汉字编码字符集》基本集,这个 字符集是我国 中文信息处理技术的发展基础,也是目前国内所有汉字系统的统一标准。由于国标码是四位十六进制,为了便于交流,大家常用的是四位十进制的区位码。所有的国标汉字与符号组成一个94×94的 矩阵。在此方阵中,每一行称为一个"区",每一列称为一个"位",因此,这个方阵实际上组成了一个有94个区(区号分别为1到94)、每个区内有94个位(位号分别为1到94)的汉字字符集。一个汉字所在的区号和位号简单地组合在一起就构成了该汉字的"区位码"。在汉字的区位码中,高两位为区号,低两位为位号。 在区位码中,01-09区为682个特殊字符,16~87区为汉字区,包含6763个汉字 。其中16-55区为一级汉字(3755个最常用的汉字,按拼音字母的次序排列),56-87区为二级汉字(3008个汉字,按部首次序排列)。
所以,当我们需要n个任意汉字时,我们不必建一个全部汉字表,而是利用区位码实现常用汉字的提取。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: GB2312是中国国家标准的字符集,它定义了一级汉字编码范围。一级汉字总共包含了6763个字,编码范围从A1A1到FEFE。按照编码范围的规则,第一个字的编码是A1A1,也就是十六进制表达为0xA1A1,而最后一个字的编码是FEFE,十六进制表达为0xFEFE。 GB2312编码范围由两个字节组成,每个字节的取值范围是十六进制的A1至FE。编码的顺序按照行列的方式进行排列,也就是说,每个编码都可以转换为行和列的形式。在GB2312中,一级汉字被分为94行、94列,共8836个编码位置,但实际上只有6763个汉字被使用,剩余的编码位置被保留用于其他用途。 在实际应用中,GB2312被广泛用于中文的输入和显示,特别是在早期的计算机系统中。它的编码方式相对较简单,容易实现和处理。然而,由于它只包含了一级汉字,无法满足现代中文的需要,因此后来的字符集如GBKGB18030等相继出现以扩展汉字编码范围。 ### 回答2: GB2312是中国国家标准的汉字字符集,编码了一级汉字的范围是从A1A1到FEFE。具体来说,它涵盖了从“啊”到“齄”的6763个汉字。这些汉字按照发音和笔画的顺序进行了组织和排列。在GB2312中,每个汉字被分配了一个唯一的编码,使用两个字节表示,高字节位于A1-FE的范围,低字节位于A1-FE的范围。例如,“啊”的编码是B0A1。 GB2312的一级汉字编码范围主要包括了基本常用的汉字,涵盖了日常生活和一般文字交流所需的大部分字符。这些编码是根据汉字的使用频率和重要性来确定的,使得许多文本和信息都可以用GB2312编码进行表示和传输。同时,GB2312还附带了一些特殊字符、数字、英文字母和符号,以满足更广泛的字符需求。 需要注意的是,GB2312GB2312-1980标准的简化汉字字符集,它是后来GBKGB18030等字符集的基础。如果要包括更多的汉字和符号,可能需要使用更高级别的字符集,如GBKGB18030

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值