几种典型汉字编码之间转换的原理与实现.pdf

几种典型汉字编码之间转换的原理与实现.pdf

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
几种典型汉字编码之间转换的原理与实现

计算机科学2008Voi.35NQ.4B 几种典型汉字编码之间转换的原理与实现 周 永1 陈宁2 (西南石油大学计算机科学学院 成都610500)1(中国石油西南油气田公司输气管理处 成都610213)2 摘要本文讨论汉字与机内码、区位码、Unicode编码之间如何进行相互转换。在介绍了汉字编码的基本概念后, 分析了汉字的编码规则与内在联系,最后用Java语言给出了编码之间转换的一种具体实现。 关键词汉字,编码转换,机内码,区位码,Umcode,Java 种方法允许分派65536个唯一的字符。这样的编码数量,几 1 引言 乎可以表示世界上所有可书写语言。汉字的Unicode编码是 汉字是我国使用最为广泛的文字,在计算机被广泛应用 的今天,研究汉字在计算机内的各种编码及其相互转换,具有 在对中文资料进行汉字数量统计时,实际上判断Unieode编 很大的应用价值。不少时候都存在这样的需要:由汉字得到 码是不是位于上述范围之内就可以了。 其对应的区位码,计算文档中的汉字数量;对大量文献进行汉 在分别介绍了三种编码之后,接下来讨论它们之间的关 字使用频度统计。要完成以上任务,就必须研究汉字在计算 系。对GB2312中的汉字而言,机内码和区位码之间的关系 机内的一些编码。本文重点讨论汉字与它的机内码、区位码、 最为密切。首先来看看如何从区位码得到汉字的机内码。将 Unicode编码这四者之间,如何在已知其一的情况下,得到其区码加上十进制的160,位码也同样加上160,得到的结果分 它三项。 别转换为十六进制,再连接起来,就是汉字的机内码。例如 “周”字的区位码是5460,区码54加上160等于214,转换为 2原理分析 十六进制就是“D6”;位码60加上160等于220,转换为十六 汉字要在计算机内部存储,首先必须按照一定的编码规 进制就是“DC。因此,从“周”的区位码5460,可以得到其机 则进行编码[1]。本文讨论的机内码和Unieode编码,在某种内码的十六进制形式为“D6DC,’。同样地,也可以用汉字的机 意义上都属于计算机内部的存储码,而区位码是属于输入码 内码,得到汉字的区位码。因为机内码通常是用十六进制表 的一种。把区位码纳入讨论范围,是因为很多时候有获取区 示,减去十进制的160,就是减去十六进制的A0。例如,某个 位码的需要。如高考报名时考生就需要填写和姓名对应的区 汉字的机内码是“BCDE。用BC减去A0等于1C,即十进制 位码。以下先简单介绍一下三种编码: 的28;用DE减去A0等于3E,即十进制的62。最终得到的 机内码[2]:计算机中的所有文字符号都是用编码的方式 区位码是2862,对应汉字中的“嫁”字。从上述分析我们可以 来实现的,这在本质上都是一些二进制的组合。因为汉字的 看出,对GB2312中的汉字,机内码和区位码之间关系密切, 数量较多,用一个字节的8个二进制位,元法对所有汉字进行 可以很容易的相互转换。但要从上述编码得到汉字的Um— 编码。汉字在计算机内存储时,采用两个字节进行编码,也就 code编码,实际上无法直接获取。要从机内码或区位码得到 是16个二进制位。例如“编程技巧”中的“编”字,在实际存储 汉字的Unicode编码,必须先得到此汉字。在Java这样的语 时的编码,用十六进制表示是“B1EO”,用二迸制表示是言中,基本数据类型中的char类型用两个字节存储,可以很 和。 方便地得到汉字的Unieode编码。 需要说明的是,使用区位码输入法可以直接得到汉字。 区位码:要谈区位码

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档