1 / 42

第五章 中文信息处理

第五章 中文信息处理. 汉字信息的表示. 5.2 中文信息在计算机内的表示. 在计算机内表示中文信息的最早在 IBM 、富士通、日立等计算机生产厂家的计算机中开始,但采用的编码形式互不兼容。 为了能使汉字能够在计算机中通行,国际标准组织( ISO )、国际电子电气工程师协会( IEEE )以及各个使用汉字的国家和地区,在计算机技术发展中,都制定了各种各样的汉字编码字符集。 ISO/IEC 2022 定义了七位代码和八位代码的空间及其代码空间扩充的技术。 绝大多数计算机系统所采用的字符集,都是以 ISO/IEC 2022 为基础的。

gabe
Télécharger la présentation

第五章 中文信息处理

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第五章 中文信息处理 汉字信息的表示

  2. 5.2中文信息在计算机内的表示 • 在计算机内表示中文信息的最早在IBM、富士通、日立等计算机生产厂家的计算机中开始,但采用的编码形式互不兼容。 • 为了能使汉字能够在计算机中通行,国际标准组织(ISO)、国际电子电气工程师协会(IEEE)以及各个使用汉字的国家和地区,在计算机技术发展中,都制定了各种各样的汉字编码字符集。 • ISO/IEC 2022定义了七位代码和八位代码的空间及其代码空间扩充的技术。 • 绝大多数计算机系统所采用的字符集,都是以ISO/IEC 2022为基础的。 • 一般汉字在计算机内部的表示都是通过扩充编码长度实现的。

  3. 汉字的几种通行名称 • Hanzi,Hantsu,汉字 • Ideographic character,表意字符,中文字符 • Kanji-日文中的叫法 • Hanja-朝鲜文中的叫法 • CJK-中日韩通用字符集 • Unihan

  4. ISO/IEC 2022单八位代码空间图

  5. ISO/IEC 2022单八位代码空间图 • 00-31(十六进制为00H-1FH)为第一个控制字符集C0H的编码区域 • 32(十六进制为20H)为Space • 127(十六进制为7FH)为DELETE符; • 128-160(十六进制为80H-A0H)为第二个控制字符集C1的编码区域 • 33-126 ( GL ) 和161-254 (GR) 则是两个图形字符的编码区域

  6. 汉字在ISO/IEC 2022空间中的位置

  7. ISO/IEC 2022的体系结构特点 • 代码空间狭小,凡是C0, C1控制字符相关的空间都回避不用;汉字编码没有利用80 (十六进制) 以上的空间。 • 按国家/地区分别编码。 • 需要一整套复杂的指明/调用的控制功能来区分代码空间中的字汇。

  8. 汉字代码 • 汉字内码是真实世界的汉字信息在计算机系统中的最基本表示。 • 根据汉字信息在计算机内部使用的目的和存储的方式,汉字代码有各种不同的形式和称谓。 • 最常使用的有交换码和内码等。

  9. 汉字交换码 • 汉字交换码是用于信息交换的汉字代码。 • 可以用双字节、3字节和4字节表示。 • 汉字交换码一般不能直接用于信息处理。 • 例如,在GB2312中,“码”字的交换码为十六进制的42h/6Bh。无法与ASCII码的“Bk”相区别。 • 在实际使用中,交换码必须转换为机内码。 • 但是在国际标准ISO/IEC 10646和Unicode中,交换码与处理码可以是一致的,因为此时的ASCII码也采用双字节表示。

  10. 汉字区位码 • 汉字区位码是汉字交换码的另一种表示形式。 • 在GB2312中,汉字交换码所占的方阵大小为94×94,若纵向定义为区号(取值范围为十进制数的0-94),横向定义为位号(取值范围为十进制数的0-94),则两个坐标明确了一个汉字的位置。区号和位号的编号都是从1开始,到94结束。 • 例如,在GB2312-80中,“ 码”字所在的区号为“34”,位号为“75”,故其区位码为“3475”。

  11. 汉字区位码 GB2312-80汉字编码 • 国标交换码: • 问题:信息通信中,汉字的区位码与通信使用的控制码(00H~1FH)发生冲突。 • 解决方案:为了避免汉字区位码与通信控制码的冲突,ISO2022规定,每个汉字的区号和位号必须分别加上32(即二进制0010 0000)。 • 经过这样处理得到的代码称为汉字的“国标交换码”(简称交换码)。因此,“大”字的交换码是: 00110100 01110011。

  12. 汉字机内码 • 用于信息处理的汉字代码,也称汉字处理码。 • 汉字的内码长度可以不同,通常汉字内码是双字节。 • 对于单字节操作系统内核,汉字代码为了与ASCII码相区别,往往把两字节(至少把第一个字节)的最高位(Bit 7)置为1。

  13. 汉字机内码 GB2312-80汉字编码 • 机内码: • 问题:文本中的汉字与西文字符经常是混合在一起使用的,汉字信息如不予以特别的标识,它与单字节的标准ASCII码就会混淆不清。 • 解决方法:把一个汉字看作两个扩展ASCII码,使表示GB2312汉字的两个字节的最高位(b7)都等于“1”。这种高位为l的双字节(16位)汉字编码就称为GB2312汉字的“机内码”,又称内码。 如:“大”字的内码是:10110100 11110011(B4F3)

  14. 交换码、 区位码和内码关系 • 在GB2312-80中,交换码、 区位码、处理码之间存在着简单的转化关系。 • 设交换码为JH(J为高位,H为低位,为十六进数),区位码为QW(Q为区号,W为位号,为十进制数),处理码为CL(C为高位,L为低位,为十六进制数),则: • J=Q+32 --再转换为十六进制数 • H=W+32 --再转换为十六进制数 • C=J+80H • L=H+80H

  15. 汉字编码字符集 • 按照一组无歧义的规则而定义的汉字字汇的有序集合。其中每一个汉字与它的代码表示之间具有一一对应关系。 • 在信息处理技术中汉字编码字符集用于汉字信息的表示、交换、传输、处理、存储、输入及显示。 • 在国际标准化组织ISO的定义中,“无歧义的规则”很重要,制定这些规则的目的是为了确保编码的唯一性,避免重码。

  16. 00 FF 00 FF 00 FF 00 FF GB2312 GBK-95 00 FF 00 FF 27484汉字 GB18030-2000 虚线外的汉字,4字节表示 汉字编码的关系 GB2312-80 6763汉字 2个扩充的汉字字符集 GB12345-90 GBK-95 20902汉字 GB18030-2000

  17. 常用汉字编码字符集

  18. 主要汉字(文字)编码标准与规范 • ASCII(英文) • GB2312 • GBK • GB13000 • GB18030 • BIG5 • Shift_JIS • ISO/IEC 10646 • Unicode

  19. ASCII码 • 美国信息交换标准编码(“美标”) • 用从0到127的128个数字来代表信息的规范编码 • 包括33个控制码,一个空格码,和94个形象码 • 形象码中包括了英文大小写字母,阿拉伯数字,标点符号等 • 国际上大部分电脑的通用编码

  20. 国标、区位 • 国标:中华人民共和国国家标准信息交换用汉字编码 • GB 2312 – 80(信息交换用汉字编码字符集 基本集(又称为GB0) • GB 13000 –93(信息技术 通用多八位编码字符集(UCS)第一部分) • GB 18030-2000 (信息技术 信息交换用汉字编码字符集 基本集的扩充 ) • 国标(GB2312-80)表(基本表)把七千余汉字、以及标点符号、外文字母等,排成一个94行、94列的方阵 • 每一横行叫一个“区”,每个区有九十四个“位” • 一个汉字在方阵中的坐标,称为该字的“区位码” • 例如“中”字在方阵中处于第54区第48位,它的区位码就是5448

  21. 区位码表 • 区位码来源于信息交换用汉字编码字符集(基本集)国家标准(GB2312-80),该标准收汉字6763个,第一级3755个,位于16至55区,55区的最后5个字符没有定义;第二级3008个,位于56至87区 • 第一级汉字按照汉语拼音字母顺序排列,同音字以笔形顺序横(一)、直(丨)、撇(丿)、点(丶)、折(乙)为序。起笔相同按第二笔,依次类推。 • 第二级汉字按部首排序,本标准采用的部首与一般字典用的部首基本相同,略有改变。部首次序及同部首字按笔划数排列,同笔划数的字以笔形顺序横(一)、直(丨)、撇(丿)、点(丶)、折(乙)为序。起笔相同按第二笔,依次类推。 • 查表时先查区号,再查行、列,例如:“、”是0102,“蔼”是1610。

  22. 区位码表(GB2312-80) • 1-9区:682个符号(2、4、5、6、7、8、9区有空位164个) • 包括:一般符号(间隔、标点、运算、制表)202个 • 序号60个 • 数字22个 • 希腊字母48个 • 俄文字母66个 • 汉语拼音26个 • 拉丁字母52个 • 日文假名169个 • 汉语注音37个 • 10-15区:空 • 88-94区:空 • 16-87区:6763个汉字 • 16-55区:一级汉字3755个 • 55区有5个空位,从89-94 • 56-87区:二级汉字3008个 • 一级汉字按照音、笔形排列 • 二级汉字按照部首排列

  23. 国标、区位、“准国标”、机内码 • 94:美标中形象码的总数,33--126 • 汉字区、位码各加上32,就会与美标形象码的范围重合,称为该字的“国标码”,与其相对应的两个美标符号,为该字的“国标符” • 如何区分国标符与美标符:国标码的两个数字各加上128,称“准国标”或“机内码” • 机内码=(区位码)H + 8080H +2020H

  24. BIG-5 • Big5编码是台湾地区信息业常用的汉字编码字符集的一种代码空间,可直接用作处理码。 • 台湾、香港、澳门等地使用 • 取码范围: • 高位:0x81-0xfe • 低位:0x40-0x70,0xa1-0xfe • Big5编码空间在一个94*157的矩阵中。Big5有94个区,每个区有157个位,因此最多可以容纳14758个码元。 • Big5中收录了13494个字符(其中,13053个汉字和441个非汉字图形字符)。

  25. ISO/IEC 10646 • 一个国际标准编号,国际标准化组织(ISO)1993年正式颁布 • 英文全称:Information technology - Universal Multiple - Octet Coded Character Set,简称UCS • 中文全称:信息技术--通用多八位编码字符集,亦称大字符集 • 宗旨:全球所有文种统一编码

  26. Unicode • 英文Universal Code的缩略语 • 统一编码 • 是对国际标准ISO/IEC 10646编码的一种称谓 • 是一个企业联盟集团的名称,由美国的HP、Microsoft、IBM、Apple等几家知名的大型计算机企业所组成,成立该集团的宗旨就是要推进多文种的统一编码 • 就内容而言,Unicode和ISO/IEC 10646是一致的,并行的

  27. ISO10646/Unicode • ISO10646的第0群组第0字面(群和面的值都为00h)称为「基本多语种文字面」(Basic Multi-lingual Plane, BMP),其编码字元与Unicode相同。 • ISO10646的BMP和Unicode的编码字符。

  28. ISO/IEC 10646中CJK汉字组成 • CJK统一编码汉字(20902) • CJK扩充集A(6585) • CJK扩充集B(4万--)

  29. ISO 10646/Unicode的实现及其重要意义 • 在全球范围内建立起实时、无障碍的信息交换模式 • 推动了汉字典籍的数字化 • 为数字化图书馆的建立铺平了道路 • 为弘扬汉字文化提供了舞台 • Single Binary技术的诞生:同一套基本程序用于多个语言环境的技术 • 使汉字关联活起来:正-异关联、中-日关联、繁-简关联,正-讹关联以及古今、新旧字形关联

  30. GBK • 汉字内码扩展规范,Rules/Specifications defining the extensions of internal codes for Chinese ideograms • 为了推进Unicode的实施,同时也是为了向下兼容,由电子部与国家技术监督局联合颁布 • 在保持GB2312原貌的基础上,将其字汇扩充与ISO 10646中的CJK等量,同时也包容了台湾的工业标准Big5码汉字,此外还为用户留了1894个码位的自定义区 • 2字节汉字编码 • 在内码上兼容GB2312-80 • 在字汇上兼容GB13000/ISO10646 • 是GB2312向GB13000过渡的中间代码 • 收录21886个汉字和符号

  31. GB18030-2000 • 信息交换用汉字编码字符集基本集的扩充 • 2000-3-17发布 • 2001年9月作为国家标准强制实施 • 2000年ISO发布了ISO 10646-1:2000(Unicode 同步定义为Unicode 3.0),主要是增加了称为中日韩统一汉字Extension A的6,582个字符。 • GB18030-2000编码标准就在原来的 GB2312-1980 编码标准和 GBK 编码标准的基础上进行扩充,增加了四字节(32位)部分的编码。 • 整合GBK的汉字后到达了27484个汉字,总编码空间超过150万个码位 • GB18030标准采用单字节、双字节和四字节三种方式对字符编码 • GBK的替代、超集

  32. GB18030-2000 • 完全包含CJK(Unihan) Extension A • 与GBK完全兼容(code- and character- compatible)的同时,为所有其它Unicode码点提供了空间 • 定义了4字节编码机制

  33. GB18030-2000码位范围分配表 • 2字节编码共23940个码位 • 4字节编码共超过150万个码位

  34. UTF • Unicode transformation format • UCS transformation format • 从Unicode码点到唯一字节序列的映射算法,一一映射,保证无损转换 • UTF-16 • UTF-8 • UTF-32

  35. 本 章 结 束

More Related