您的位置:伟德app官方下载 > 房产楼市 > 字符编码概念科学探讨,也谈生僻字的音讯管理

字符编码概念科学探讨,也谈生僻字的音讯管理

2019-10-10 07:30

也谈生僻字的信息处理 (载入中...)

字符编码调研(转载,网络资源总结)

1. ASCII
我们需要了解的最早编码是ASCII码。它用7个二进制位来表示,由于那个时期生产的大多数计算机使用8位大小的字节,因此用户不仅可以存放所有可能的ASCII字符,而且有整整一位空余下来。如果你技艺高超,可以将该位用做自己离奇的目的:WordStar中那个发暗的灯泡实际上设置这个高位,以指示一个单词中的最后一个字母,同时这也宣示了WordStar只能用于英语文本。
  由于字节有多达8位的空间,因此许多人在想:“呀!我们可以把128~255之间的编码用做个人的应用目的。”问题在于,同时产生这种想法的人相当多,而且在128~255之间的各个位置上应该存放什么这一问题上,真是仁者见仁智者见智。事实上,只要人们开始在美国以外的地方购买计算机,那么各种各样的不同OEM字符集都会进入规划设计行列,并且各人都会根据自己的需要使用高位的128个字符。如此一来,甚至在同语种的文档之间就不容易实现互换。 ASCII可被扩展,最优秀的扩展方案是ISO 8859-1,通常称之为Latin-1。Latin-1包括了足够的附加字符集来写基本的西欧语言。
最后,这个人人参与的OEM终于以ANSI标准的形式形成文件。在ANSI标准中,每个人都认同如何使用低端的128个编码,这与ASCII相当一致。不过,根据所在国籍的不同,处理编码128以上的字符有许多不同的方式。这些不同的系统称为代码页。
  同时,甚至更为令人头疼的事情正在逐步上演,亚洲国家的字符表有成千上万个字符,这样的字符表是用8位二进制无法表示的。该问题的解决通常有赖于称为DBCS(double byte character set,双字节字符集)的繁杂字符系统。
  不过,仍然需要指出一点,多数人还是姑且认为一个字节就是一个字符,以及一个字符就是8个二进制位,并且只要确保不将字符串从一台计算机移植到另一台计算机,或者说一种以上的语言,那么这几乎总是可以凑合。当然,只要一进入Internet,从一台计算机向另一台计算机移植字符串就成为家常便饭了,而各种复杂状况也随之呈现出来。令人欣慰的是,Unicode随即问世了。

  摘要:汉字生僻字的输入,一直是困扰文史工作者的难题,本文试在前人的研究基础上,提出一些关于汉字信息处理的设想和相关的解决方案。  关键字:生僻字;字符集;信息处理

http://www.eygle.com/digest/2007/01/zhs16gbk_char.html

2.iso8859-1

  汉字的信息处理经过多年的摸索,冲破了以前汉字不能进入计算机的迷信,取得了可喜的成绩,但离能完全满足实际使用的需要还有很长一段距离。  我们先回顾一下计算机中的字库,然后讨论生僻字的信息处理方法。

http://unicode.org/standard/WhatIsUnicode.html

属于单字节编码,最多能表示的字符范围是0-255,应用于英文系列。比如,字母'a'的编码为0x61=97。

                一、汉字库发展简介

http://www.regexlab.com/zh/encoding.htm

很明显,iso8859-1编码表示的字符范围很窄,无法表示中文字符。但是,由于是单字节编码,和计算机最基础的表示单位一致,所以很多时候,仍旧使用iso8859-1编码来表示。而且在很多协议上,默认使用该编码。比如,虽然"中文"两个字不存在iso8859-1编码,以gb2312编码为例,应该是"d6d0 cec4"两个字符,使用iso8859-1编码的时候则将它拆开为4个字节来表示:"d6 d0 ce c4"(事实上,在进行存储的时候,也是以字节为单位处理的)。而如果是UTF编码,则是6个字节"e4 b8 ad e6 96 87"。很明显,这种表示方法还需要以另一种编码为基础。

  汉字库通俗地说就是计算机软件系统中的汉字仓库,依据不同的标准,字库中汉字的数量是不同的,以前的主要标准有:  1、GB 2312 汉字编码字符集  从1975年开始,我国为了研究汉字的使用频度,进行了大规模的字频统计工作,内容包括工业、农业、军事、科技、政治、经济、文学、艺术、教育、体育、医药卫生、天文地理、自然、化学、文字改革、考古等多方面的出版物,在数以亿计的浩瀚文献资料中,统计出实际使用的不同的汉字数为6335个,而其中有3000多个汉字的累计使用频度达到了99.9%,而另外的3000多个累计频度不到0.1%,说明了常用汉字与次常用汉字的数量不足7000个,这就为国家制定汉字库标准提供了依据。1980年颁布了《信息交换用汉字编码字符集—基本集》的国标交换码,国家标准号为:GB2312-80,选入了6763个汉字,分为两级,一级字库中有3755个,是常用汉字,二级字库中有3008个,是次常用汉字;还选入了682个字符,包含有数字、一般符号、拉丁字母、日本假名、希腊字母、俄文字母、拼音符号、注音字母等。以前我国大陆的各种中文DOS版本、Windows3.1 /3.2版本,装入的字库都是国标一二级字库。遇到“镕、啰、瞭、袆、祎、曌、赟、贇、鱻、驫、犇……”等汉字,既无法输入,又不能打印。后来国家技术监督局又颁布了一个与之相对应的繁体字集,全称《信息交换用汉字编码字符集辅助集》,标准号为GB/T12345-90。  2、台湾 BIG5 字库  BIG-5码是通行于台湾、香港地区的一个繁体字编码方案,俗称“大五码”。地区标准号为:CNS11643,这就是人们讲的BIG5码。  BIG-5码收录汉字13053个,分为常用字和次常用字两部分,各部分中的汉字按笔划/部首排列。其中常用字5401个,包括台湾教育管理部门颁布的《常用汉字标准字体表》中的全部汉字4808个,台湾中小学教科书常用字587个,异体字6个;次常用字7652个,包括台湾教育管理部门颁布的《次常用汉字标准字体表》的全部汉字6341个,《罕用汉字标准字体表》中使用频率较高的字1311个。  后来为了协助解决众多使用BIG5码单位于进行公文电子传递时遇到自造字无法转换CNS的问题,实行了“BIG5码字集扩编计划”,1986年7月扩编完成,这就是所谓的“BIG5+码”。  BIG5+码系以CNS为蓝本,共增编标准字集4760个字符与推荐字集3250个字符;其标准字集即纳编CNS第3字面字集内之4145个,第4个字面字集内之219个字,均为一般文书常用之中文字,总支持文字量达141376个  3、大字符集字库(又叫GBK字库)国际标准化组织为了将世界各民族的文字进行统一编码,制定了UCS标准。根据这一标准,中、日、韩三国共同制定了《CJK统一汉字编码字符集》,其国际标准号为:ISO/IEC10646,国家标准号为:GB13000-90,该汉字编码字符集就是通常人们所说的大字符集,它编入了20902个汉字,收集了大陆一二级字库中的简体字,台湾《通用汉字标准交换码》中的繁体字,58个香港特别用字和92个延边地区朝鲜族“吏读”字,甚至涵盖了日文与韩文中的通用汉字,满足了方方面面的需要。Windows95/98/NT/2000中都装入了大字符集汉字库,人们一般称它为GBK(“国家标准扩展”的拼音缩写)字库。  4、新标准汉字库  2000年3月,国家信息产业部和质量技术监督局在北京联合发布了《信息技术和信息交换用汉字编码字符集、基本集的扩充》,国家标准号为:GB18030-2000,收录了27000多个汉字,还收录了藏、蒙、维等主要少数民族的文字,以期一举解决邮政、户政、金融、地理信息系统等生僻汉字与主要少数民族语言的输入,该标准于2000年12月31日强制执行。 GB 18030-2000 作为 GBK for Unicode 3.0 的更新而诞生,它带有包含所有Unicode 的扩展,完全向下兼容 GB 2312-1980 和 GBK。

快速理解一

  1. GB码

               二、对于汉字库设计的想法

gbk映射到unicode的意思, 每个gbk编码都对应一个unicode编码, 这两个编码值可以不相同;

全称是GB2312-80《信息交换用汉字编码字符集基本集》,1980年发布,是中文信息处理的国家标准,在大陆及海外使用简体中文的地区(如新加坡等)是强制使用的唯一中文编码。P-Windows3.2和苹果OS就是以GB2312为基本汉字编码, Windows 95/98则以GBK为基本汉字编码、但兼容支持GB2312。
双字节编码
范围:A1A1~FEFE
A1-A9:符号区,包含682个符号
B0-F7:汉字区,包含6763个汉字

  字集不是越大越好,因为现存于大型字典辞书的字有一部分是历史用字,还有大量的异体字。根据使用的需要和研究的情况,对汉字的信息处理可以分为几个层次  1、日常生活用字:(可有一个人名、地名辅助集和错字集)  日常生活用字就是常用字,这个数字可能就在3000字左右,再加上一些次常用字,可能也就在6000字左右,当然,其中哪些是常用字,哪些是次常用字,具体的字可能要随着时代不同而发生变化。日常生活用字要求有规范性,现在进行的“规范汉字表”课题研究可能有助于此字集的确定。人名和地名用字是一个比较特殊的问题,国家语言文字工作委员会正在进行“人名、地名规范”的研究,如果此研究成果面世,则可能有助于解决现代人的人名、地名用字问题。此集中最好还应该有一个错字集,在早期识字教育和对外汉语教学中,经常要使用到一些错别字,别字好打,缺笔少划的错字没有办法处理,所以应特置一个错字集,有利于错别字教学的信息化与错别字的集中纠正。  2、一般古籍整理用字:(应该有一个异体字辅助集)  古籍用字,数量比现代生活用字多。因为历代沉积下来的异体字、死字比较多。关于这个问题,首先应该进行异体字的整理,异体字整理完成后,正体字就可以确定一个数量。为了保持古籍版本原样,古籍整理工作者和语言文字研究者也要用到异体字,所以附录一个异体字集。  还有一个问题就是方言字,很多方言字来源于古代的字典辞书、地方韵书和方言词典,少部分来源于民间文艺作品。首先方言字有一个规范的问题,那些有本字又意义比较明确的,应该首先选用本字。如本字不明,可沿用俗字。  3、古文字用字:(也有一个异体字辅助集)  关于古文字,一般定义为小篆以前的文字为古文字,其中有很多字还不可识,这种情况,就首先要区分出可识字(与小篆或楷书有对应字)与不可识字,然后进行异体字的整理。并且要能为每个不可识字设计可以调用的编码,以利于检索。  汉字库的设计,针对不同的用户与使用目的,分级分层次是很必要的。各级之中首先要全,同时要考虑各级之间正体字与异体字、繁体与简体、古文字与今字的正确对应等。  此外,各种常用图符也可考虑收录到各级字库中,如传世古籍中出现的圈点符号、古文字中的有句读作用的符号。少数民族和外域的汉字型变体字,也可考虑单置一类,以有利于文字的比较研究。

gb2312, 简体中文,国标;

4.GB2312

big5, 台湾, 繁体中文;

GB2312(1980年)一共收录了7445个字符,包括6763个汉字和682个其它符号。汉字区的内码范围高字节从B0-F7,低字节从 A1-FE,占用的码位是72*94=6768。其中有5个空位是D7FA-D7FE。GB2312-80中共收录了7545个字符,用两个字节编码一个字符。每个字符最高位为0。GB2312-80编码简称国标码。

gbk, 兼容了gb2312big5与其它, 如日韩文字, 为国家指导标准, 非国标;

  GB2312支持的汉字太少。1995年的汉字扩展规范GBK1.0收录了21886个符号,它分为汉字区和图形符号区。汉字区包括21003个字符。

gbk2k, 扩充了gbk, 国标;

  1. GB12345-90

GB2312

1990年制定了繁体字的编码标准GB12345-90《信息交换用汉字编码字符集第一辅助集》,目的在于规范必须使用繁体字的各种场合,以及古籍整理等。该标准共收录6866个汉字(比GB2312多103个字,其它厂商的字库大多不包括这些字),纯繁体的字大概有2200余个。
双字节编码
范围:A1A1~FEFE
A1-A9:符号区,增加竖排符号
B0-F9:汉字区,包含6866个汉字

范围: 0xA1A1 - 0xFEFE

6.GBK

汉字范围: 0xB0A1 - 0xF7FE

GBK编码(Chinese Internal Code Specification)是中国大陆制订的、等同于UCS的新的中文编码扩展国家标准。gbk编码能够用来同时表示繁体字和简体字,而gb2312只能表示简体字,gbk是兼容gb2312编码的。GBK工作小组于1995年10月,同年12月完成GBK规范。该编码标准兼容GB2312,共收录汉字21003个、符号883个,并提供1894个造字码位,简、繁体字融于一库。Windows95/98简体中文版的字库表层编码就采用的是GBK,通过GBK与UCS之间一一对应的码表与底层字库联系。
英文名:Chinese Internal Code Specification
中文名:汉字内码扩展规范1.0版
双字节编码,GB2312-80的扩充,在码位上和GB2312-80兼容
范围:8140~FEFE(剔除xx7F)共23940个码位
包含21003个汉字,包含了ISO/IEC 10646-1中的全部中日韩汉字

GB2312码是中华人民共和国国家汉字信息交换用编码,全称《信息交换用汉字编码字符集--基本集》,由国家标准总局发布,1981年5月1日实施,通行于大陆。新加坡等地也使用此编码。 GB2312收录简化汉字及符号、字母、日文假名等共7445个图形字符,其中汉字占6763个。GB2312规定"对任意一个图形字符都采用两个字节表示,每个字节均采用七位编码表示",习惯上称第一个字节为"高字节",第二个字节为"低字节"。GB2312- 80包含了大部分常用的一、二级汉字,和9区的符号。该字符集是几乎所有的中文系统和国际化的软件都支持的中文字符集,这也是最基本的中文字符集。其编码范围是高位0xa1-0xfe,低位也是0xa1-0xfe;汉字从0xb0a1开始,结束于0xf7fe。

  1. BIG5编码

GBK

是目前台湾、香港地区普遍使用的一种繁体汉字的编码标准,包括440个符号,一级汉字5401个、二级汉字7652个,共计13060个汉字。BIG5又称大五码或五大码,1984年由台湾财团法人信息工业策进会和五间软件公司宏碁 (Acer)、神通 (MiTAC)、佳佳、零壹 (Zero One)、大众 (FIC)创立,故称大五码。Big5码的产生,是因为当时台湾不同厂商各自推出不同的编码,如倚天码、IBM PS55、王安码等,彼此不能兼容;另一方面,台湾政府当时尚未推出官方的汉字编码,而中国大陆的GB2312编码亦未有收录繁体中文字。

范围: 0×8140 - 0xFEFE

Big5字符集共收录13,053个中文字,该字符集在中国台湾使用。耐人寻味的是该字符集重复地收录了两个相同的字:“兀”(0xA461及0xC94A)、“嗀”(0xDCD1及0xDDFC)。

GB2312-80 仅收汉字 6763 个,这大大少于现有汉字,随着时间推移及汉字文化的不断延伸推广,有些原来很少用的字,现在变成了常用字,例如:朱鎔基的“鎔”字,未收入 GB2312-80,现在大陆的报业出刊只得使用(金+容)、(金容)、(左金右容)等来表示,形式不一而同,这使得表示、存储、输入、处理都非常不方便,对于搜索引擎等软件的构造来说也不是好消息,而且这种表示没有统一标准。从我们对人民日报 98 年数据的处理过程中,得出这样的经验:回填外字最困难的就是如何得到这种表示方法的集合。

Big5码使用了双字节储存方法,以两个字节来编码一个字。第一个字节称为“高位字节”,第二个字节称为“低位字节”。高位字节的编码范围0xA1-0xF9,低位字节的编码范围0x40-0x7E及0xA1-0xFE。

为了解决这些问题,以及配合 UNICODE 的实施,全国信息技术化技术委员会于 1995 年 12 月 1 日《汉字内码扩展规范》。GBK 向下与 GB2312 完全兼容,向上支持 ISO-10646 国际标准,在前者向后者过渡过程中起到的承上启下的作用。

尽管Big5码内包含一万多个字符,但是没有考虑社会上流通的人名、地名用字、方言用字、化学及生物科等用字,没有包含日文平假名及片假字母。

GBK是GB2312-80的扩展,是向上兼容的。它包含了20902个汉字,其编码范围是0×8140-0xfefe,剔除高位0×80的字位。其所有字符都可以一对一映射到Unicode2.0。

例如台湾视“着”为“著”的异体字,故没有收录“着”字。康熙字典中的一些部首用字(如“亠”、“疒”、“辵”、“癶”等)、常见的人名用字(如“堃”、“煊”、“栢”、“喆”等) 也没有收录到Big5之中。

字集

8.UTF-8

GBK 共收入21886个汉字和图形符号,包括:

UTF:UCS Transformation Format.考虑到unicode编码不兼容iso8859-1编码,而且容易占用更多的空间:因为对于英文字母,unicode也需要两个字节来表示。所以unicode不便于传输和存储。因此而产生了utf编码,utf编码兼容iso8859-1编码,同时也可以用来表示所有语言的字符,不过,utf编码是不定长编码,每一个字符的长度从1-6个字节不等。另外,utf编码自带简单的校验功能。一般来讲,英文字母都是用一个字节表示,而汉字使用三个字节。

GB2312 中的全部汉字、非汉字符号。

注意,虽然说utf是为了使用更少的空间而使用的,但那只是相对于unicode编码来说,如果已经知道是汉字,则使用GB2312/GBK无疑是最节省的。不过另一方面,值得说明的是,虽然utf编码对汉字使用3个字节,但即使对于汉字网页,utf编码也会比unicode编码节省,因为网页中包含了很多的英文字符。

BIG5 中的全部汉字。

UTF8编码后的大小是不一定,例如一个英文字母"a" 和 一个汉字 "好",编码后占用的空间大小就不样了,前者是一个字节,后者是三个字节!编码的方法是从低位到高位。黄色为标志位其它着色为了显示其,编码后的位置。

与 ISO-10646 相应的国家标准 GB13000 中的其它 CJK 汉字,以上合计 20902 个汉字。

9.Unicode

其它汉字、部首、符号,共计 984 个。

Unicode字符集(简称为UCS),国际标准组织于1984年4月成立ISO/IEC JTC1/SC2/WG2工作组,针对各国文字、符号进行统一性编码。1991年美国跨国公司成立Unicode Consortium,并于1991年10月与WG2达成协议,采用同一编码字集。目前Unicode是采用16位编码体系,其字符集内容与ISO10646的BMP(Basic Multilingual Plane)相同。Unicode于1992年6月通过DIS(Draf International Standard),目前版本V2.0于1996公布,内容包含符号6811个,汉字20902个,韩文拼音11172个,造字区6400个,保留20249个,共计65534个。Unicode编码后的大小是一样的.例如一个英文字母 "a" 和 一个汉字 "好",编码后都是占用的空间大小是一样的,都是两个字节!

GBK 编码区分三部分:

Unicode可以用来表示所有语言的字符,而且是定长双字节(也有四字节的)编码,包括英文字母在内。所以可以说它是不兼容iso8859-1编码的,也不兼容任何编码。不过,相对于iso8859-1编码来说,uniocode编码只是在前面增加了一个0字节,比如字母'a'为"00 61"。

汉字区 包括

需要说明的是,定长编码便于计算机处理(注意GB2312/GBK不是定长编码),而unicode又可以用来表示所有字符,所以在很多软件内部是使用unicode编码来处理的,比如java。

GBK/2:OXBOA1-F7FE, 收录 GB2312 汉字 6763 个,按原序排列;

GBK/3:OX8140-AOFE,收录 CJK 汉字 6080 个;

中日韩汉字Unicode编码表:

GBK/4:OXAA40-FEAO,收录 CJK 汉字和增补的汉字 8160 个。

查询需要Unicode编码的字符:

图形符号区 包括

GBK/1:OXA1A1-A9FE,除 GB2312 的符号外,还增补了其它符号

GBK/5:OXA840-A9AO,扩除非汉字区。

 

用户自定义区

即 GBK 区域中的空白区,用户可以自己定义字符。

編碼

GBK 亦采用双字节表示,总体编码范围为 8140-FEFE 之间,首字节在 81-FE 之间,尾字节在 40-FE 之间,剔除 XX7F 一条线。

微 软公司自 Windows 95 简体中文版开始支持 GBK 代码,標準叫法是 Windows codepage 936,也叫做 GBK(國標擴展),它也是 8-bit 的變長編碼。據我所知 GBK 從來沒成爲過正式的國家標準,只不過因爲 Windows 的普及,它已經成爲事實上的標準了。但目前的多数搜索引擎都不能很好地支持 GBK 汉字。

由前电子部科技质量司和国家技术监督局标准化司于1995年12月颁布的指导性规范。(GBK的 K是“扩展”的汉语拼音第一个字母)

GBK作为非 UCS ( ISO/IEC 10646 ) 体系的代码页,适用于中文信息的处理、交换、存储、传输、显现、输入和输出。

GBK 与国家标准 GB 2312-80 信息处理交换码所对应的、事实上的内码标准兼容;同时,在字汇一级支持 ISO/IEC 10646-1 和GB 13000-1 的全部中日韩 (CJK) 汉字(20902字)。GBK除了包含GB2312-80 和GB12345-90中包括的全部非汉字符号外,还涵盖我国台湾地区中文标准交换码TCA-CNS 11643 -92 ( 与其对应的内码为Big5;以下用Big5泛指二者。) 中的绝大多数符号。

从Windows95中文版起,Windows NT 3.51, 4.0, Windows2000, Windows CE, Linux已经全面支持GBK,起到了从GB 2312向Unicode过渡的承上启下的重要作用。

GBK尽管在字汇一级支持CJK,是目前最大的Code Page ;它在体系结构、代码空间上,仍然是完全不同于ISO/IEC 10646 和Unicode的。

BIG5

范围: 0xA140 - 0xF9FE, 0xA1A1 - 0xF9FE

Big5是台湾的IIIT1984年发明的,CNS 11643-1992( Chinese National Standard)

是扩展版本,主要大家用的还是big5

每个字由两个字节组 成,其第一字节编码范围为0xA1~0xF9,第二字节编码范围为0×40~0×7E与0xA1~0xFE,总计收入13868个字 (包括5401个常用字、7652 个次常用字、7个扩充字、以及808个各式符号)

GB18030:

GB18030-2000(GBK2K)在GBK的基础上进一步扩展了汉字,增加了藏、蒙等少数民族的字形。GBK2K从根本上解决了字位不够,字形不足的问题。它有几个特点:

它并没有确定所有的字形,只是规定了编码范围,留待以后扩充。

编码是变长的,其二字节部分与GBK兼容;四字节部分是扩充的字形、字位,其编码范围是首字节0×81-0xfe、二字节0×30-0×39、三字节0×81-0xfe、四字节0×30-0×39。

它的推广是分阶段的,首先要求实现的是能够完全映射到Unicode3.0标准的所有字形。

它是国家标准,是强制性的。

补充:

中文信息编码标准,常用的是GB2312-1980,GB12345,GB13000(GBK),

以及最新标准GB18030。

GB2312的汉字编码规则为:第一个字节的值在0xB0到0xF7之间,第

二个字节的值在0xA0到0xFE之间。

GB12345和GB13000是对GB2312-1980的扩充,所有已经包含在GB2312

中的汉字编码不变,另外增加更多的码位。其编码规则大致为:第一

个字节的值在0×81到0xFE之间,第二个字节的值在0×40到0xFE之间。

GB18030 是最新的汉字编码字符集国家标准, 向下兼容 GBK 和 GB2312 标准。

GB18030 编码是一二四字节变长编码。 一字节部分从 0×0~0×7F 与 ASCII

编码兼容。 二字节部分, 首字节从 0×81~0xFE, 尾字节从 0×40~0×7E 以及

0×80~0xFE, 与 GBK标准基本兼容。 四字节部分,

第一字节从 0×81~0xFE, 第二字节从 0×30~0×39, 第三和第四字节的范围和前

两个字节分别相同。 四字节部分覆盖了从 0×0080 开始, 除去二字节部分已经

覆盖的所有 Unicode 3.1 码位。也就是说, GB18030 编码在码位空间上做到

了与 Unicode 标准一一对应,这一点与 UTF-8 编码类似。

Unicode

Unicode provides a unique number for every character, no matter what the platform, no matter what the program, no matter what the language. It is the official way to implement ISO/IEC 10646.

UTF_8字符集

UTF是Unicode/UCS Transformation Format,即把Unicode转做某种格式的意思。UTF-8(8 位Universal Character Set/Unicode Transformation Format)是一种针对Unicode的可变长度字符编码(定长码),也是一种前缀码。它可以用来表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII兼容,这使得原来处理ASCII字符的软件无须或只须做少部份修改,即可继续使用。因此,它逐渐成为电子邮件、网页及其他存储或传送文字的应用中,优先采用的编码。

UTF-8是UNICODE的一种变长字符编码,由Ken Thompson于1992年创建。现在已经标准化 为RFC 3629。UTF-8用1到6个字节编码UNICODE字符。如果UNICODE字符由2个字节表示,则编码成UTF-8很可能需要3个字节,而如果UNICODE字符由4个字节表示,则编码成UTF-8可能需要6个字节。用4个或6个字节去编码一个UNICODE字符可能太多了,但很少会遇到那样的UNICODE字符。

还有UTF-16/UTF-32,均为UNICODE的不同表现格式。

Hong Kong GCCS

Hong Kong GCCS是香港政府为big5加的3049个字,(Government Chinese Character Set)

香港增补字符集(HKSCS)是后来的标准,包括了Big5和ISO10646的编码,所以HKSCS的big5

版是补充了GCCS的增强版,ISO10646是UCS(universal character set),ISO是政府组织

Unicode是电脑业界组织,不过UCS和Unicode的字库一样

编码字数统计:

GB2312 6763个汉字

GB12345 6866个汉字

GBK 21003个汉字

GB18030 27000个汉字

Big5 13053个汉字

CNS11643 48,027个汉字

ansi编码

不同的国家和地区制定了不同的标准,由此产生了 GB2312, BIG5, JIS 等各自的编码标准。这些使用 2 个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码。在简体中文系统下,ANSI 编码代表 GB2312 编码,在日文操作系统下,ANSI 编码代表 JIS 编码。

字符与编码的发展

从计算机对多国语言的支持角度看,大致可以分为三个阶段:

 

系统内码

说明

系统

阶段一

ASCII

计算机刚开始只支持英语,其它语言不能够在计算机上存储和显示。

英文 DOS

阶段二

ANSI编码
(本地化)

为使计算机支持更多语言,通常使用 0x80~0xFF 范围的 2 个字节来表示 1 个字符。比如:汉字 '中' 在中文操作系统中,使用 [0xD6,0xD0] 这两个字节存储。

不同的国家和地区制定了不同的标准,由此产生了 GB2312, BIG5, JIS 等各自的编码标准。这些使用 2 个字节来代表一个字符的各种汉字延伸编码方式,称为 ANSI 编码。在简体中文系统下,ANSI 编码代表 GB2312 编码,在日文操作系统下,ANSI 编码代表 JIS 编码。

不同 ANSI 编码之间互不兼容,当信息在国际间交流时,无法将属于两种语言的文字,存储在同一段 ANSI 编码的文本中。

中文 DOS,中文 Windows 95/98,日文 Windows 95/98

阶段三

UNICODE
(国际化)

为了使国际间信息交流更加方便,国际组织制定了 UNICODE 字符集,为各种语言中的每一个字符设定了统一并且唯一的数字编号,以满足跨语言、跨平台进行文本转换、处理的要求。

Windows NT/2000/XP,Linux,Java

本文由伟德app官方下载发布于房产楼市,转载请注明出处:字符编码概念科学探讨,也谈生僻字的音讯管理

关键词: