汉字编译法
A. 什么是汉字编码
每天,我们都窝在格子间里噼里啪啦敲代码敲到脱发,对代码我们是再熟悉不过的老朋友了。
但不知道小伙伴们有没有想过这样一个问题:
那些让我们“英年早秃”的代码,到底是怎么来的呢?
今天,丽斯老师就带大家看看,这个让我们爱恨两难的“老朋友”究竟是何方神圣。
什么是编码?
编码,是信息从一种形式或格式转换为另一种形式的过程,简单来讲就是语言的翻译过程。
我们都知道计算机使用的是机器语言即二进制码,相信大部分人都无法流畅的阅读二进制码。
于是为了能够让人类更好的理解计算机输出的结果就需要将机器语言转换为自然语言。
比如英语、俄语和中文等。
这看似简单的语言转换过程,随着计算机的普及,与互联网化对语言字符的编码冲击也越来越大。
编码规范的调整也伴随着整个计算机发展历史在逐步完善,甚至“愈演愈烈”。
UTF-8又是什么
Unicode确实是一套能够满足全球使用的字符集,但是难道真的需要每一个字符都占用4个字节吗?
虽然现在的存储空间已经足够大了,但是4个字节一个字符的方式还是很不明智的。
比如字符“A”二进制码01000001却需要以的方式存储。
这一定不是我们想要的。
于是UTF(Unicode/UCS Transformation Format)应运而生。
UTF是字符编码五层次模型的第三层,通过特定的规则对Unicode字符编码进行一定的压缩和转换以便快捷传输。
UTF的代表就是UTF-16和UTF-8。
千万不要以为UTF-16比UTF-8更厉害能够容纳更多字符。
字符容纳数量都是是Unicode编码集所确定的范围,UTF只是通过不同的转换形式更快更高效的找到特定字符。
而UFT-16 比较奇葩,它使用 2 个或者 4 个字节来存储。
对于 Unicode 编号范围在 0 ~ FFFF 之间的字符,UTF-16 使用两个字节存储,并且直接存储 Unicode 编号,不用进行编码转换,这跟 UTF-32 非常类似。
对于 Unicode 编号范围在 10000~10FFFF 之间的字符。
UTF-16 使用四个字节存储,具体来说就是:
将字符编号的所有比特位分成两部分。
较高的一些比特位用一个值介于 D800~DBFF 之间的双字节存储。
较低的一些比特位(剩下的比特位)用一个值介于 DC00~DFFF 之间的双字节存储。
设计UTF-8编码表达方式的理由:
1、单字节字符的最高有效比特永远是0(大家可以看看其他编码方式如何别扭的兼容ASCII码的);
2、多字节序列中的首个字符组的几个最高有效比特决定了序列的长度。最高有效位为110的是2字节序列,而1110的是三字节序列,如此类推;
3、多字节序列中其余的字节中的首两个最高有效比特为10。
转换关系如下图:
这样我们根据所要兼容的语言不同根据UTF-8多字节最高有效比特,去判断编码最终使用了多少个字节来存储。
其余的字节也都满足最高有效比特为10的特点有了一定的纠错功能。
简单一些理解就是UTF-16就是通过2个字节16位来控制压缩比例。
而UTF-8已经以高精度的1个字节8位来控制压缩比例了。
当然还有中UTF-32就可想而知,基本跟Unicode如出一辙。
B. 百度搜索时解释汉字的叫什么编译方法
UTF-8编码或者gbk(GB2312)编码
中文的gbk(GB2312)编码
如果是中文的gbk(GB2312)编码,那么它的形式应该是这样的,即一个汉字对应两组%xx,即%xx%xx,比如http://www..com/?tn=&word=%D6%D0%B9%FA 这个网页地址是网络的,网络是使用GB2312编码的,这个网址中我们可以看到的特殊代码是“%D6%D0%B9%FA”,其中前面的“%D6%D0”就对应中文汉字“中”字,后面的“%B9%FA”就对应中国汉字“国”字。
中文的UTF-8编码
如果是中文的UTF-8编码,那么它的形式应该是这样的,即一个汉字对应三组%xx,即%xx%xx%xx,比如http://www.icpoline.com/tag/%e7%bd%91%e6%b0%91 ,这个网址是本站IcpOline.com的网页,IcpOline使用的是UTF-8编码,这个网址中的”%e7%bd%91%e6%b0%91〃对应着中文汉字“网民”,即“%e7%bd%91”对应汉字“网”,“%e6%b0%91”对应中文汉字“民”。
C. 下列汉字编码方法中,采用4个字节进行编码的是—— A。GB2312-80 B.GBK C.BIG5 D.UCS/Unicode
D
前三个选项都只有双字节编码。UCS/Unicode有2/4/8字节编码。
D. 汉字编码有哪些类型,各有什么特点
汉字编码有五种类型,分别是整字输入法、字形分解法、字形为主字音为辅的编码法、拼音为主字形为辅的编码法、全拼音输入法。具体特点如下:
1、整字输入法
将三四千个常用汉字排列在一个具有三四百个键位的大键盘上;一字一格(键),无重码,直观性好,操作简单;但需特制键盘,速度较慢。
2、字形分解法
汉字的形体分解成笔画或部件,按一定顺序输进机器;按形取码,不涉及字音,因而不认识的字也同样可以编码输入;汉字形体结构非常复杂,写法也有许多差异,分解标准不易统一。
3、字形为主、字音为辅的编码法
要利用某些字音信息,如有的方案为了简化编码规则,缩短码长,在字形码上附加字音码;有的方案为了采用标准英文电传机,将分解归纳出来的字素通过关系字的读音转化为拉丁字母。
4、全拼音输入法
以现行的汉语拼音方案为基础进行设计;操作简捷,可以“盲打”,不受汉字简化、字形改变的影响,符合拼音化方向,并且还便于作进一步信息处理。
5、拼音为主、字形为辅的编码法
在拼音码前面或后面再添加一些字形码,拼音码有用现行汉语拼音方案或稍加简化的,还有的为了缩短码长而把声母和韵母都用单字母或单字键表示的“双拼方案”或“双打方案”;除了大部分采用偏旁部首的信息外,还有采用起末笔或采用语义类别的。
(4)汉字编译法扩展阅读:
定型标准
1、定型化
编码方案的定型化,即一般所说的选优工作,对计算机的普及应用非常重要。当然,定型或选优并不意味着只定一种或只选一种,而要照顾到多种用户的需要。
2、标准化
1981年,国家标准局公布了《信息交换用汉字编码字符集基本集》(简称汉字标准交换码),共分两级,一级3755个字,二级3008个字,共6763个字。这种汉字标准交换码可以为各种输入输出设备的设计提供统一的标准,使各种系统之间的信息交换有共同一致性。
E. 汉字涉及到几种编码
汉字在计算机上的编码主要有三种:输入码、机,内码和输出码,1.用于输入的汉字的编码——输入码(外码)
计算机上输入汉字的方法很多,如键盘编码输入、语音输入、手写输入、扫描输入等,其中键盘编码输入是最容易实现和最常用的一种汉字输入方法。英文等可以用键盘上的每个字母键来输入,而输入汉字则不同,不可能用有限的按键来对应每一个汉字,为了让用户能直接使用英文键盘输入汉字,于是就有了输入汉字时使用的汉字输入码,它一般由键盘上的字母或数字组成,代表某个汉字或某些汉字、词组或句子。当前用于汉字输入的编码方案很多,如区位码、拼音码、王码(五笔字型)、自然码等。
2.用于储存汉字的编码——机内码(内码)
由于汉字输入码的编码方案多种多样,同一个汉字如果采用的编码方案不一样,其输入码就有可能不一样。如果计算机内部存放的是汉字输入码本身,就会造成相同汉字在机内可以用不同的编码表示,这样显然不合理,也给计算机内部的汉字处理增加了难度。为了将汉字的各种输入码在计算机内部统一起来,就引进了汉字的机内码。
3.用于输出汉字的编码——输出码(字型码)
存储在计算机内的汉字在屏幕上显示或在打印机上打印出来时,必须以汉字字形输出,才能被人们所接受和理解。汉字的输出码实际上是汉字的字型码,它是由汉字的字模信息所组成的。汉字是一种象形文字,每个汉字东可以看成一个特定的图形,这种图形可以用点阵、向量等方式表示,而最基本的是用点阵表示。所谓点阵方式,就是将汉字分解成由若干个“点”??组成的点阵字型,将此点阵字型至于网状方格上,每个方各试点阵中的一个“点”。
F. 汉字编码方法及计算机汉字输入方法能申请专利吗
汉字编码方法属于一种信息表述方法,它与声音信号、语
言信号、可视显示信号或者交通指示信号等各种信息表述方式
一样,解决的问题仅取决于人的表达意愿,采用的解决手段仅
是人为规定的编码规则,实施该编码方法的结果仅仅是一个符
号/字母数字串,解决的问题、采用的解决手段和获得的效果
也未遵循自然规律。因此,仅仅涉及汉字编码方法的发明专利
申请属于专利法第二十五条第一款第(二) 项规定的智力活动
的规则和方法,不属于专利保护的客体。
但是,如果把汉字编码方法与该编码方法可使用的特定键
盘相结合,构成计算机系统处理汉字的一种计算机汉字输入方
法或者计算机汉字信息处理方法,使计算机系统能够以汉字信
息为指令,运行程序,从而控制或处理外部对象或者内部对
象,则这种计算机汉字输入方法或者计算机汉字信息处理方法
构成专利法第二条第二款所说的技术方案,不再属于智力活动
的规则和方法,而属于专利保护的客体。
G. 什么软件能把汉字编译成C语言
C语言、JAVA语言,这些可以统称为机器语言。
机器语言就是“电脑编译器可以看得懂的语言”,目前绝大部分机器语言都是用英语语系,中文语系的机器语言并不成熟,有个“易语言”算是半成品。
但无论使用什么语言,人可以理解的文字和机器可以理解的文字,有本质区别。目前还没有可能“将人可以看得懂的变成机器可以看得懂的”这样的工具,目前最先进的,也不过是用汉字写成的“伪代码”或流程图变成C语言,但这也是个非常复杂的工程,缺乏准确性。
如果这个从“人看得懂的汉字”变成了C语言 实现了,那么,具有创造力的智能机器人 就很可能实现了,这是世界难题。
H. 汉字编码按编码方法不同,可分为哪四大类
汉字编码主要分为四大类:汉字输入码、汉字交换码、汉字内码和汉字字形码。
(1)汉字的外部码
汉字的外部码简称外码,又叫输人码,是输人汉字的一组键盘符号。使用不同的输入方法,同一汉字的外部码不同。用户应选用易记忆、操作简单、位码少、重码少和输人速度快的外码。
(2)汉字的内部码
汉字的内部码又称汉字内码或汉字机内码。机器接收到外码后,要转换成内码进行存储、运算和传送。用二个字节表示汉字的内码。为了和西文符号区分,内码的最高位设为“1”。内码通常用汉字在车库中的物理位置表示,可以是汉字在字库中的序号,也可以是字库中的存储位置。
(3)汉字交换码
在计算机之间交换信息时,要求传送的汉字代码符合国家规定的交换码标准,即符合GB2312-80信息交换用汉字编码集,又称为国标码。国标码收集了7445个图形字符,其中有6763个汉字和各种符号709个。
国标码规定,每个汉字用两个字节表示,每个字节仅用低7位,最高位为0。汉字的国标码和内码有—一对应关系,即将高位加l,国标码就变为内码。
(4)汉字字形码
在显示或打印汉字时,还涉及到字形码,又称输出码。汉字字形是指原来铅字排版汉字的大小和形状,在计算机中指组成汉字的点阵。尽管汉字字形有多种变化,笔画繁简不一,但都是方块字且大小相同,都可以写在同样的方块中。把一个方块看成m行n列矩阵,共有m×n个点,称为汉字点阵。如16×16点阵的汉字,共有256个点
汉字点阵和字形的对应关系是,有笔画处的点为1,无笔画处的点为0。这样,汉字的点阵可以对应若干字节长的字形码。这种表示汉字点阵的方法称为汉字字形的数字化表示法。
I. 汉字如何使用摩斯密码编译
一是直接发拼音,二是用不同组合的数字代替汉语的意思,三是拍发英文的缩写。(摩尔斯码就是由“·”和“—”组成,不同的组合组成数字或字母,比划目前是没有,太费劲了,毕竟是外国发明的)
J. 汉字编码分为哪四种
汉字编码主要分为四大类:汉字输入码、汉字交换码、汉字内码和汉字字形码。
(1)汉字的外部码
汉字的外部码简称外码,又叫输人码,是输人汉字的一组键盘符号。使用不同的输入方法,同一汉字的外部码不同。用户应选用易记忆、操作简单、位码少、重码少和输人速度快的外码。
(2)汉字的内部码
汉字的内部码又称汉字内码或汉字机内码。机器接收到外码后,要转换成内码进行存储、运算和传送。用二个字节表示汉字的内码。为了和西文符号区分,内码的最高位设为“1”。内码通常用汉字在车库中的物理位置表示,可以是汉字在字库中的序号,也可以是字库中的存储位置。
(3)汉字交换码
在计算机之间交换信息时,要求传送的汉字代码符合国家规定的交换码标准,即符合GB2312-80信息交换用汉字编码集,又称为国标码。国标码收集了7445个图形字符,其中有6763个汉字和各种符号709个。
(4)汉字字形码
在显示或打印汉字时,还涉及到字形码,又称输出码。汉字字形是指原来铅字排版汉字的大小和形状,在计算机中指组成汉字的点阵。
尽管汉字字形有多种变化,笔画繁简不一,但都是方块字且大小相同,都可以写在同样的方块中。把一个方块看成m行n列矩阵,共有m×n个点,称为汉字点阵。如16×16点阵的汉字,共有256个点。
汉字编码
汉字编码(Chinese character encoding )是为汉字设计的一种便于输入计算机的代码。由于电子计算机现有的输入键盘与英文打字机键盘完全兼容。因而如何输入非拉丁字母的文字(包括汉字)便成了多年来人们研究的课题。
汉字信息处理系统一般包括编码、输入、存储、编辑、输出和传输。编码是关键。不解决这个问题,汉字就不能进入计算机。
汉字进入计算机的三种途径 分别为:
①机器自动识别汉字:计算机通过“视觉”装置(光学字符阅读器或其他),用光电扫描等方法识别汉字。
②通过语音识别输入:计算机利用人们给它配备的“听觉器官”,自动辨别汉语语音要素,从不同的音节中找出不同的汉字,或从相同音节中判断出不同汉字。
③通过汉字编码输入:根据一定的编码方法,由人借助输入设备将汉字输入计算机。
机器自动识别汉字和汉语语音识别,国内外都在研究,虽然取得了不少进展,但由于难度大,预计还要经过相当一段时间才能得到解决。在现阶段,比较现实的就是通过汉字编码方法使汉字进入计算机。