电脑新时代汉字不再落后,其处理效率已经反超英文(其一)
在工业时代,在使用铅字的时候,汉字的机械化处理,诸如机械打字、四码电报、铅活字排版印刷,都显著地落后于英文。这是催生汉字落后论的一个重要社会技术原因。1995年,铅字被淘汰了,电脑打字、网络通信、计算机激光照排取代了繁难、低效的机械打字、四码电报、铅活字排版印刷。这时候汉字依然落后吗?有一些人,包括一些权威的语文学家和管理者,他们认为:电脑产生在使用拉丁字母的西方国家,电脑最适合使用拼音文字的西方,我们实现汉字电脑化处理,花费、开销比西方大得多,效率差得多。本文作者想在这里指出:这种认识是没有根据的,是不符合实际的。实际上,汉字的电脑化处理不再比英文落后、繁难,其处理效率实际上一节实现了对英文的反超。
汉字信息电脑存储----从沉重负担到比英文节省一半
汉英两种文字信息处理中,占用电脑存贮量的比较是个带有重要性的问题。许多作者在比较汉、英文字属性优劣时,在论及汉字发展前途时都谈到这个问题。一种观点认为:汉字字量大,结构复杂;一个汉字占两个字节;汉字字库比英文字库大得多;故而用计算机表示、存贮、加工都要耗费比英文大得多的存贮量,是计算机的沉重负担,并认为这是古老的汉字不能适应信息新技术的一个证据。另一种观点则认为:汉字简明、准确、信息量大,这些优点在电脑文字信息处理中也一定带来许多好处。哪一种看法更正确?我们具体分析如下。
1.字形的点阵表示
计算机的打印输出和荧光屏显示,从上个世纪70年代中期以来,已经完全摆脱了金属铅字,使用数字化点阵表示。就字形点阵表示、存贮来说,汉字确实要比英文至少多消耗数百倍、甚至数千倍的存储。例如显示英文,最低可用7×9点表示一个字符。显示汉字最低需用16×16点。英文字符总量取为100(实际上Ascii可见字符为94个),汉字取为7000。那么汉、英字形库占用存贮量分别为:
汉字字库:16×16×7000点
英文字库:7×9×100点
简单计算可知:此处汉字字形存贮量是英文的284倍。由于汉字结构复杂,同一种点阵规模,汉字字形视觉区分质量比英文差。如果取英文的点阵规模为n×n,汉字的为(2n)×(2n),英文仍取100个字符,汉字取五万个字符。那么
汉字字库:(2n)×(2n)×50000点
英文字库:n×n×100点
此时比值为2000,即这种汉字字形存贮量为英文的2000倍。这里所用的单位“点”,对应着计算机存贮的最小单位:二进制位。16×16点阵7000个汉字所占计算机存贮,用计算机术语说,占1750K位=218KB(K字节)≈0.2 MB(兆字节)。24*24点阵7000个汉字所占计算机存贮量为4032000位=504000字节=504KB(K字节)≈0. 5MB(兆字节)。这里K=1024,近似于1000;M=K*K,近似于一百万;G=K*K*K,近似于十亿;T=K*K*K*K,近似于万亿。就是说,KB近似于一千字节;MB近似于一百万字节;GB近似于十亿字节;TB近似于万亿字节。一个字节等于8个二进制位。
2.字符的二进制编码表示
电脑表示文字信息有两种方式。一种是上述的点阵方式,这只用于计算机的可见输出,即制作纸版本时的打印,或者应答用户操作时的屏幕显示。还有另一种应用更广的方式即内部编码表示,它广泛用于信息存贮、传输及加工处理。编码表示类似于用四位十进制数表示汉字的电报码,只是电脑文字编码中用二进制整数表示文字字符。一个拉丁字符,通常用一个八位二进制数表示,就是用一个字节表示。一个汉字字符,按国家标准,通常用两个字节表示。粗看起来,似乎仍然是汉字编码多耗费了字节。实则不然。因为拉丁字符和汉字字符负载的信息量大不相同,拉丁字母和汉字不是同一等级的。一个最简单的具体比较,例如:“你好”这句问候语,它的汉、英文版占用编码字节数分别为:
汉文版:你好,占2×2=4个字节
英文版:How areyou,占11个字节(内含两个空格)
英文版使用字节数是汉文版的2.75倍,可记为d=2.75。这个例子似太简单,难于引出一般结论。1988年笔者曾做过如下统计。选择毛泽东选集、毛泽东诗词等材料,取英、汉两种文本输入电脑,计算英文版占用字节数与汉文版占用数的比值d,得结果如表9.1。
表9.1 英文、汉文计算机编码表达长度的比较
资料名称 | d= 英文版字节数/汉文版字节数 | |
②愚公移山、为人民服务 | 2.0 | |
② 毛泽东诗词36首 | 2.9 | |
③英诗汉译7首 | 2.9 | |
④ 古汉语诗英译23首 | 4.5 |
如果读者想要自己做一下简单统计,还可以用下述办法.。我们取一本对外汉语教材《一百句式汉语通》(鲁川,孙文方主编,华语教学出版社,2008年)。取其中六个课文,共包含16个句式。每个句式都是汉字
文本资料都选用有影响的权威资料【36—39】。统计中没有计入文题、词牌名、题解、注释等项。正文统计中含空格及标点。统计结果表明:汉文的简约特点是鲜明的。汉字信息的存储量仅仅是英文的1/d,节省的部分为:(d-1)/d。由于d的值最小为2,故汉文版编码表示用电脑字节数至少比英文省一半(英文比汉字费一倍)。汉文版这种简约性因体裁不同而差异甚大。中国古诗简约性最强,现代白话文为最弱。但这最弱,也只是英文的一半。就文字编码表示、存贮来说,汉字的简捷性具有明显优点,同一文本的英文版占用电脑存贮量至少比汉文版多耗费一倍。
3.计算机存储器发展情况
今天的普通微机,包括笔记本电脑,其存储量都已经足够大,用户使用时通常不必担心存储量不足的问题。这与二三十年前截然不同。表7.2给出国产计算机存储器规模的数据。这些机器包括了微型机之前的主要机型,其中没有一种机器的内存能够容得下最低精度的汉字字库(均小于218KB)。再看表9.3,其中列出美国IBM公司著名机型IBM360的存储量数据。IBM360是上个世纪六七十年代风靡世界的产品,是微型机之前IBM公司销量最大的产品。从表9.3可见,其中83%的机器内存小于64KB;只有22台(仅占0.12%)肯定能够放得下一个低精度汉字库;仅仅13%的机器的高配置放得下一个低精度汉字库。表9.2、9.3表明,在微型机之前,对国、内外的计算机,汉字字库都是沉重负担,也可以说,是无法承受之重。
表9.2 上个世纪50~70年代中国国产计算机的内存容量
年代 | 机器型号 | 字长 | 内存容量 (字数) | 内存容量 (字节数) |
1958 | 103 | 31 | 1024 | 4KB |
1959 | 104 | 39 | 2048 | 10KB |
1964 | 109 | 32 | 8192 | 32KB |
1970 | 111 | 48 | 32K字 | 192KB |
1971 | 709 | 48 | 32K字 | 192KB |
1973 | 150 | 48 | 32K字 | 192KB |
1974 | DJS130 | 16 | 4~32K字 | 8~64KB |
9.3 上世纪六七十年年代风靡世界的IBM 360机的内存容量
机器型号 | 推出年月 | 内存字节数KB | 生产台数 | 所占比例 (总台数:18838) |
IBM360-20 | 1966.1 | 4~6 KB | 7966 | 86% |
IBM360-30 | 1965.5 | 8~64 KB | 8219 | |
IBM360-40 | 1965.5 | 16~262 KB | 1758 | 13% |
IBM360-44 | 1966.10 | 32~262 KB | 78 | |
IBM360-50 | 1965.9 | 64~262 KB | 589 | |
IBM360-65 | 1966.3 | 131~1024 KB | 206 | |
IBM360-75 | 1965.11 | 262~1024 KB | 17 | 0.12 |
IBM360-90 | 1967.2 | 512~16384KB | 5 |
表9.4. 上世纪80年代以来部分微型机性能*
年 | 型号 | 内存 | 外存 | 速度 | 售价 | |
1978 | DJS130 (小型机) | 64 KB (1 ) | 6 MB硬盘 (1 ) 500KB磁鼓 | 1 MHz (1) | >30 万圆 | |
1981 | IBMPC | 64 KB (1 ) | 160KB 5英寸软盘 (* ) | 4.77MHz (4.77) | 5 万圆 | |
1983 | IBMPC/XT | 512 KB (8 ) | 10 MB硬盘 (1.7 ) +3英寸软盘 | 16MHz (16) | 3.8 万圆 | |
1993 | IBM 486 | 2 MB (32 ) | 84 MB硬盘 (14 ) +3英寸软盘 | 25 MHz (25) | 2.2 万圆 | |
1999 | 国产品牌 | 32MB (512) | 4.3 GB (734) | 366 MHz (366) | 0.5 | |
2005 | 国产品牌 | 512 MB (8192)| | 80 GB (13653) | 2.0 GHz (2048) | 0.5 | |
2009 | 国产品牌 | 1GB (16384) | 250GB (42667) | 2.66GHz (2724) | 0.4 | |
*首行为小型机,是王选研制激光照排时使用的,样书《伍豪之剑》用此种机器完成。可见,该机器比2009年的普通微机的指标低了数千倍到数万倍!
表9.4则主要列出的是微型机存储器状况。从中可见:二十多年时间里,微型机性能(内存储量,外存储量,速度)提高了千倍、万倍,而价格则下降为原来的数十分之一。微型机性能价格的这种变化是人类社会其他任何行业都很难见到的。不了解这种发展变化,往往会做出错误判断。从这些表格所列的数据所反映的实际情况,我们才能做出进一步的适当分析。
4.计算机发展的头30多年,汉字字库是计算机的沉重负担
从表9.2、9.3可见,计算机发展的头30多年,当时绝大部分计算机的内存,都比最低精度的汉字字库容量(218KB字节)要小。这就是汉字处理的一个决大难题。可以说,这时候,汉字字库是计算机的无法承受之重。这是中文信息处理滞后于英文的一个重要技术原因。
此外,微型机诞生之前的二十多年里,计算机的存储器主要是磁芯存储器。单个磁芯的直径不足一个毫米。这时,最小存储单元,二进制位,是肉眼可见的。参见图9.1,这是磁芯板的局部照片,其中可见金属导线串连在一起的磁芯。图9.2是一块完整磁芯板照片,其容量为1K位(32*32=1024位)。制作磁芯板需要大量、细致的手工操作。小小的每个磁芯里要穿过两三根导线。中国台湾曾经是美国磁芯板的重要加工区。IBM当初购买王安磁芯专利时,曾提议每制造一个磁芯付专利费1美分,被王安拒绝。后来事实证明,对于王安这其实比50万美圆买断要强得太多了。如果我们按通常5%的提取专利费,那么一个磁芯应该价格是20美分。1K字节磁芯板价格曾经为1638.4美圆(1024*8*0.2=1638.4)。一个低精度汉字库,218KB的磁芯板应该价格为三十五万多美圆(实为357171.20美圆),价格相当昂贵。把这当作五六十年代汉字库的一个成本估计,有参考价值。可见当时采取扩大存储量的办法解决汉字库问题,经济上缺少可行性。美国的一些公司(包括IBM),曾看好中国著名作家林语堂先生发明的中文打字机,在上世纪五六十年代就购买了林的专利,想把它作为基础设计中文电脑的输入设备。存储器昂贵可能是汉字项目最终没能成功的原因之一。其实,中国某邮电研究所,也曾在1969年做成数千汉字的20*20精度的汉字库,用于汉字电报收报。未能推广应用的原因中,也少不了字库太贵这一条。
图9.1磁芯板局部照片(其中可见金属线穿在一起的磁芯)
图9.2 1Kb(32*32=1024位)容量的磁芯板
5.随着微型机存储量的增大,汉字处理的难度变小,汉字简明的优点变得突出
微型机诞生以后,计算机存储器普遍使用大容量、高速度的半导体存储器。并且以技术性能每2~3年提高4~5倍,价格每三年降低到1/4的速度发展。表7.4中除第一行外都是微型机,可见性能提高变化情况。其中第一行所列,是北大748汉字工程课题组,于1980年完成样书《伍豪之剑》排版时用的计算机,是中国仿制NOVA小型机的产品。价格三四十万。它仍然使用64KB的磁芯存储器和一个仅仅6MB的保加利亚硬盘。当时只能使用这种落后设备,是由于外部禁运封锁和内部闭关锁国的双重限制。磁芯板不仅容量小,难于提高;其稳定性、耐用性都远不及之后的半导体存储器。一个磁芯破碎,整个一块板就报废。平均无故障时间仅为几个小时。为了在这样低性能机器上处理汉字,王选夫妇及北大激光照排组研究人员不知多耗费了多少时间、精力,还不得不挖空心思、想方设法设计多级优化调度方案。无法存储完整字库,就按需要临时高速生成,并进行小失真快速变倍。王选夫妇发明的专利技术,帮助他们应对落后设备带来的许多麻烦,终于闯过样书排版的第一道难关。NOVA小型机的性能指标远不如1981年推出的价格仅仅数万圆的PC微型机。上个世纪80年代在微型机上成功实现了汉字处理。此时,应该说汉字字库仍然是个负担。汉卡及若干专用软件正是专为对付这个负担的而特别设计的。90年代中后期汉卡等退出历史舞台,因为微机存储量已经足以应对汉字字库。随着微机存储量的急剧增长,汉字字库消耗变得越来越微不足道。由于一套微型机系统只需要一套字库(当然包括多种字体)。硬盘里字库以外的部分,用于存储文字编码信息(前面2节所述)。这部分用于存储汉字就比存储英文节省。汉字需要的存储量仅仅是英文的1/d(d值参见表9.1)。字库以外的这部分越大,按比例节省,节省的量也就越大。
图9.3 1G字节的半导体内存条(折合4295平方米磁芯板)
从图9.3可见,1G字节的半导体内存条不过只有几个平方厘米,重量不足10克。我们现在可以估算一下,相应大小的磁芯板会有多大。不妨假设每个磁芯只占半个平方毫米。不难算出,一个G字节的磁芯板的面积将达到平方米数为:
(0.5*1024*8)*1024*1024/100/100/100;≈4295平方米
该数值为4295平方米。上面圆括号里是1K字节磁芯板占平方毫米数,乘1024得M字节数值,再乘1024为G字节数值;除以100变为平方厘米,再除以100为平方分米,再除以100得平方米数。
6. 现今在微型机里存储汉字比存储英文节省一半
前述(1)节中说汉字字形库比英文字库大数百至数千倍;前述(2)节中说英文编码表示是汉文长度的2倍到4.5倍。如何综合比较呢?最容易说清问题的是一套微机系统。一套普通的微机系统,汉字字库只要一套(包含多种字体)。具体些说,不管你的电脑是只存储单独一本红楼梦,还是同时存储四大古典名著,或者四库全书和其他什么中文材料,都只要用一套字库即可。“仅仅用一套字库”就是字库的一次性、一个性。而需要存储的文本编码信息(单独的红楼梦,到四大古典名著,到四库全书,....)则是一种累积性。2005年初装机的,大多大于100GB(一个GB等于1024MB)。其中不妨去一个GB字节(合1024MB,足以容纳宋体、黑体、楷体等二三十种高精度汉字字信息库),视为汉字库比英文多消耗的。所剩99GB中,存汉文版将比存英文版省下一半,即省49.5GB。自然,我们还要退回到1981年考虑。80年代初期,通用微机硬盘为10MB。仅仅存储低精度字库,以存24×24的宋体、楷体两种各一套计算,汉字字库容量约为1MB(一兆字节,即一百万字节)。其中不妨去一兆字节,视为汉字字库比英文多消耗的。所剩9兆字节中,存汉文版将比存英文版省下一半,即省4.5兆字节。硬盘容量在不断扩大。不到20年间,从省4. 5MB,到省49.5GB,说明了海量数据的“积累性”。而每台微机或每个系统,都只用一套汉字库,就是“一个性或一次性”。此时,我们再回头看北京大学748课题组排印样书《伍豪之剑》时用的DJS130计算机。使用64KB的磁芯存储器和6MB的保加利亚硬盘,没有显示器,没有软盘,没有针式打印机、激光打印机,没有键盘,只有光电纸带输入器,只有仅仅能够打印拉丁字符的行式打印机(激光制版机是另外的设备)。但他们排印使用的却是正式印刷质量要求的高精度字库:正文五号字用108*108点阵,封面特号字用576*576点阵。是他们用聪明智慧、艰苦卓绝克服了落后设备带来的额外困难。
7. 走进百姓日常生活的大容量存储器
中国社会正在迅速走进信息化,计算机和网络迅速地走进各行各业和普通人的生活,也把大容量、高速度的存储器带进普通人的生活。MP3,MP4,手机,数码相机,电子词典,以及遍布街道、银行、邮局、车站24小时不停运转的摄像头,无一不在使用着大容量存储器。要知道,在文字、声音、图形、活动图像这些信息里,文字(当然包括汉字,包括繁体汉字)是最简单、最节省存储、最节省处理时间的一种。能够存储一个小时音乐或图像的存储器,可以存储三四亿汉字信息。这样的一块光盘,现今不过只卖两三元钱。你想想看,那遍布街道、银行、邮局24小时不停运转的摄像头,消耗的存储器能存多少文字信息?一个摄像头一个小时存储量就按折合3亿汉字,一个摄像头一天存储量折合3*24=72亿汉字,全北京市一天呢?全国一天呢?全国一年呢?须知,一套《四库全书》的总字数约十亿汉字(据【40】44页为九亿九千七百万)。一个人,如果想把自己毕生著作留给子女一个副本。假定著作量达到数百万或千万汉字。这个愿望在百年以前绝对是无法解决的难题;在三四十年前也是巨大难题。在今天只要用一块光盘足矣。用买一斤糖葫芦的钱(超市现价15-24元),足以买5-10块光盘,可以分发给多个后代。这些你想到过吗?这些你几年前想到过吗?这和四十年前汉字字库是难题,今天不再是难题是一样的问题。计算机存储技术的飞速发展,是惊人的。每2~3年性能提高4~5倍,价格每三年降低到1/4,这往往出乎人们(包括专家们)的意料。所以,我们不能要求任何人能够正确预见这种发展,但应该要求有关人员不要无视已经成为现实的发展。某些人,在新世纪,仍然把1980年代,低精度字库无法表达某些笔画多的汉字,当作汉字落后的证据。这表明他们的认识太落伍,太不符合实际,对于与自己关系密切的领域的技术进展太迟钝。可能有人会问:你这里说的今天普及应用的存储器,和王选们1980年用的是一类东西吗?可以肯定地回答:今天两三元钱买来的光盘(700MB),比他们当时用的保加利亚硬盘(6MB)好得太多了。不仅存储量大一百多倍,易用性、稳定性也都强得太多了。他们在恶劣技术条件下,以聪明智慧、坚韧顽强与西方强大的产业集团竞争、抢时间。在七四八汉字工程胜利在望的时候,国内用户仍然花费上千万美圆订购了外国货。国外厂家决定最终退出中国市场,是1988年经济日报社卖掉铅字、用激光照排实现日报正常生产,而进口设备还无法出报的时候。