汉字编码法

计算机传入我国后,在其中输入、输出和存储汉字是用户必然的需求。计算机的键盘从英文打字机键盘发展而来,用户可以方便地利用键盘输入英文,却无法直接输入中文。针对这一问题,我国的学者和计算机工作者进行了长期的研究与开发工作,到目前为止已经基本解决了汉字的输入问题。

目前,计算机中汉字的输入方法可以分为自然输入和键盘编码输入两大类。其中自然输入包括手写输入和语音输入,虽然自然输入更加简单,但是手写输入速度慢,语音识别需要相对安静的环境。可以预见:在相当长的一段时间内,键盘编码输入还是最主流的输入方法。键盘编码输入汉字具有如下两个优点,第一,它无需添加任何外部硬件设备,手写输入通常要添加手写笔,语音输入需要麦克风和声卡结合使用,而键盘编码输入只要基于计算机的键盘;第二,输入速度快、准确率高,手写输入的速度通常较低,语音输入的准确率不太高,而且容易受到外界声音的干扰。

汉字编码法可以主要分成:流水码、音码、形码和音形码(形音码)。流水码也被称为无理码,它通常没有重码,但是用户如果要使用该输入法输入汉字,记忆量极大。例如“区位码输入法”就是一种流水码,几乎没有用户能够记住所有汉字的区位码。音码是目前比较常见的编码法,通常基于汉语拼音方案,或者对拼音方案进行一些变革与改良。例如:“全拼”就是完全基于汉语拼音,“双拼”就是为了减少输入时的击键数而作的变革。因为我国目前大多数计算机用户在中小学阶段接受过良好的汉语拼音教育,所以比较容易学习与使用该类编码法。但是由于数万个汉字只有一千多个发音,所以音码类的编码法的重码比较高,直接导致用户需要经常在候选字词中选择字词,因此降低了输入速度。形码类的输入法从汉字的形状出发,通常重码低、输入速度快,但是它们往往记忆量较大、用户学习时间长。音形码从汉字的音和形两个角度出发,有的以音为主,有的以形为主。因为结合了汉字的两部分信息,这样重码往往更加低,但是用户在输入时既要考虑音也要考虑形,考虑时间变长,所以用户学习和使用都相对困难。

汉字输入系统

汉字输入系统通常由硬件与软件两部分组成。例如:汉字语音识别输入系统,它包括:声卡、麦克风和识别软件部分。显然,软件部分应该是一个汉字输入系统中的主体部分,所以目前通常我们所说的“汉字输入系统”就是指汉字输入系统的软件部分。

一个汉字输入系统主要完成三方面的任务:第一、接受用户输入;第二、将输入码转换为候选字词的机内码;第三、将汉字或词组的机内码传递给应用程序。其中第一、第三与具体汉字编码无关,而第二的过程和不同的汉字编码是密切相关的。

对用户而言,Windows中汉字输入系统通常有三个窗口,第一个是输入法状态条窗口,第二个是输入码编辑窗口,第三个是候选字词列表窗口。另外为了便于用户有选择地使用输入法的功能,通常还提供输入法功能选项的设置界面。图1显示了纵横汉字输入法的三个相关窗口,图4.2是纵横汉字输入法的功能选项配置窗口。

图1纵横汉字输入法的三个窗口

汉字输入系统码本

汉字输入系统的主要作用是把用户输入的输入码转换为对应字词的机内码。有些汉字编码输入系统根据用户的输入码就可以直接计算出候选字词的机内码,例如“区位输入法”和“内码输入法”。但是大多数的汉字编码输入系统需要通过查询一个存储了从输入码到字词机内码映射关系的对照表,才能得出候选字词,该对照表通常称为该汉字输入系统的码本。

汉字输入系统与操作系统结合紧密,它属于系统软件,不仅需要考虑效率,还要尽量少占用系统资源。如果汉字输入系统码本采用数据库形式存储,不仅使得输入系统依赖于一个特定的数据库引擎,还将影响汉字输入系统的发布与实际使用。此外,为了节约内存空间,在进程之间共享数据,汉字输入系统的码本往往不是以数据库的形式存在,需要为汉字输入系统码本设计一些便于检索的码本结构。

图2纵横汉字输入法的选项设置窗口

目前,汉字输入系统的码本主要有三种结构:定长结构、变长结构和索引结构。定长结构特别适用于重码少、且每个输入码候选字词分布平均的编码法。对定长码本按照输入码排序后,在查找的时候可以使用二分查找,效率很高。如果不同输入码候选字词分布不均匀,重码多,或者不同输入码的候选字词条存储长度区别很大,此时可是使用变长结构的码本,变长结构的码本在存储上可以节约空间,但是不便于快速检索。索引结构的码本兼有定长结构便于快速检索和变长结构节约存储的优点,可以高效检索,而且能够节约存储空间,所以被广泛使用。

计算机汉字编码输入码,汉字编码、输入系统和码本相关推荐

  1. 笔记本蓝牙显示输入码无效_Win10系统蓝牙设备输入码无效是怎么回事

    现在,越来越多用户都开始使用蓝牙鼠标,因为其非常小巧,操作起来也十分简单.不过,近来一些朋友在 win10系统 电脑中连接蓝牙鼠标时,经常会遇到输入码无效提示,导致无法正常使用蓝牙鼠标,该怎么办呢?接 ...

  2. 在计算机系统内部使用的汉子编码是,数据库系统工程师考试汉字编码输入码

    1.2.1计算机中数据的表示 4.汉字编码 汉字处理包括汉字的编码输人.汉字的存储和汉字的输出等环.节.也就是说计算机处理汉字,首先必须先将汉字代码化,即对汉字进行编码.无论西方的拼音文字还是汉字这种 ...

  3. 计算机汉字编码不能使用内码,汉字编码及区位码查询算法

    为了使每一个汉字有一个全国统一的代码,1980年,我国颁布了第一个汉字编码的国家标准:GB2312-80<信息交换用汉字编码字符集>基本集,这个字符集是我国中文信息处理技术的发展基础,也是 ...

  4. 计算机汉字编码国标码,[计 算 机]汉字区位码\国标码\机内码之间的换算

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 国标与机内码的转换 国标码并不等于区位码,它是由区位码稍作转换得到,其转换方法为:先将十进制区码和位码转换为十六进制的区码和位码,;这样就得了一个与国标码 ...

  5. 计算机存储单元ASCI,在计算机存储器中,存储英文字母\quot;A\quot;时,存储的是它的( ) A.输入码B.ASCII码C - 作业在线问答...

    相关题目与解析 在计算机存储器中,存储英文字母"A"时,存储的是它的().A.输入码B.ASCII码C. 在计算机系统中,存储英文字母"A"时,实际存储的是它的 ...

  6. (计算机组成原理)第七章输入和输出系统-第四节1:I/O方式之程序查询方式

    文章目录 一:程序查询方式 二:相关例题 在(计算机组成原理)第七章输入和输出系统-第一节:I/O系统基本概念和I/O控制方式简介中我们简单介绍了I/O控制方式:I/O系统实现主机与I/O设备之间的数 ...

  7. 计算机毕业论文乐谱播放器,基于乐谱输入的弦乐播放系统 的设计与实现毕业论文.doc...

    本科毕业论文 (科研训练.毕业设计) 题 目:基于乐谱输入的弦乐播放系统 的设计与实现 姓 名: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 学 号: 指导教师: 职称: 年 月 摘 ...

  8. 输入码(外码),国标码,区位码,机内码,字型码的概念与关系

    输入码: 又称汉字外码,无论是区位码或国标码都不利于输入汉字,为方便汉字的输入而制定的汉字编码,称为汉字输入码.汉字输入码属于外码.不同的输入方法,形成了不同的汉字外码.常见的输入法有以下几类: 按汉 ...

  9. 输入码、区位码、内码、国标码的出现原因

    2020H.8080H 区位码.内码.国标码怎么转换非常简单,但是令人迷惑的是为什么要那么转换?这种转换不可能平白无故地那样转换! 首先,注意到一点,GB2312虽说是对中文编码,但是里面有对26个英 ...

  10. 计算机毕业设计Python+uniapp学生考勤系统小程序(小程序+源码+LW)

    计算机毕业设计Python+uniapp学生考勤系统小程序(小程序+源码+LW) 该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行 环境配置: Pychram社区版+ pyth ...

最新文章

  1. SAP MM初阶之服务采购订单
  2. 第10课--10_04_LVM之二
  3. c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)(四)
  4. Linux内核网络中数据报在协议层的处理
  5. 【OpenCV3】棋盘格角点检测与绘制——cv::findChessboardCorners()与cv::drawChessboardCorners()详解
  6. CentOS7下解决ifconfig command not found的办法
  7. tensorboard ckpt pb 模型的输出节点_tensorflow, ckpt 转 pb 并进行预测
  8. python高级应用_Python高级编程技巧
  9. 使用VMware VSphere WebService SDK进行开发 (七)——获取数据中心、集群、主机、虚拟机的目录结构
  10. 浅谈C++类(7)--析构函数
  11. iMeta宏基因组生物信息期刊-创刊背景和简介
  12. 关于flashdevelop测试flex项目时trace不出的解决方法
  13. 教你用磁盘分区软件无损扩容c盘的方法
  14. windows 下杀手tomcat 进程
  15. 《大众创业做电商——淘宝与微店 开店 运营 推广 一册通》一一1.2 创业者应具备的条件与经验...
  16. web html div javascript 实现踩黑块游戏
  17. 微信小程序之CSS实现图片遮罩
  18. 在Visual Studio项目中根据系统平台自动引用32或64位的DLL
  19. M1001 4G/5G应急指挥箱
  20. CMakeLists学习二、链接库搜索路径与ld

热门文章

  1. java程序员中英文简历_Java程序员英文简历范文
  2. Redis开发与运维学习笔记
  3. 详解Android定位,AndroidGPS定位详解(1)
  4. windows虚拟显示器SDK开发和提供
  5. 创建JSON集合使用JSONArray.fromObject 转化后得到的jsonArray集为空?
  6. 目标跟踪算法MOSSE笔记
  7. 常用正则表达式,持续更新
  8. 投标文件 医院弱电系统_甲级办公楼智能化弱电设计方案适合弱电行业人士学习!...
  9. linux用vi查找字符串替换,Linux中vi进行字符替换
  10. 我的世界自定义脚本生成器易语言源码