第98部分(第2/4 页)
知道了!说得没错,我们可以对数据进行压缩,这样可以极大地节省存储空间!】
【雏鹰:没错,这个方法更具有可行性。】
其他几位成员对林鸿的这个想法都表示了赞同,他们都说果然不愧是“HELLC”,想事情果然比他们要更加细致。
在SAM原先的三人组当中,林鸿是最受大家敬服的一位,毕竟正是他亲手破解的计算器,并且开发了性能高效的红外无线传输协议。
第一点是SAM协会成立的根本原因,而第二点则是破解程序能够迅速传播起来,并且和其他社团竞争能够优势领先的重要推动因素。
而在此之前,他们的软件或者数据文件以原始的大小存储在计算器中的,没有经过任何加工,原来多大,存储到计算器中也就多大。
接着,他们开始讨论该如何实现数据的压缩。
由于早期计算机存储空间的不足,计算机中的数据压缩需求从一开始就存在,早在四五十年代,美国著名数学家,信息论的创始人,天才级人物克劳德*香农就发表过这方面的基础性论文,为数据压缩奠定了理论基础。
之前美国各大BBS上比较流行的压缩软件主要是SEA公司开发的ARC,这是一种商业压缩软件,如果使用,必须花钱购买。
后来,有一个叫做菲利普*卡茨的毛头小伙,他也是BBS的狂热爱好者,但是囊中羞涩,他见连压缩个文件都要付费,于是便动手自己开发了一个同类软件,免费开放给大家使用。
菲利普刚开始开发的软件名称叫做“PKARC”,前面两个字母是自己的名和姓缩写,后面的ARC自然是指商业软件ARC;因为当时SEA公司发行的软件里面,还包括一部分C语言的源代码,他根据其中的内容,就编写了一个同类软件,可以完全兼容ARC。
这样一来,大家都立刻成为了PKARC的忠实用户,SEA公司见到这种情况,立刻将菲利普告上了法庭,于是法院判决菲利普禁止继续开发和传播PKARC。
但是这场官司并没有磨灭菲利普的斗志,他同绝大多数黑客们一样,推崇自由和免费,于是在官司结束几周之后,他另外开发了个软件;取名为“PKZIP”。
“ZIP”在英语中有“快速”、“嗖嗖而飞过”的意思,通常形容子弹“ZIP”而过,菲利普取这个名字,意思就是说他要开发的软件,将要比ARC更加快速,功能更加强大。
很显然,他成功了。短短几周之内,他开发出来的PKZIP软件,可以将一个或多个文件压缩到一个后缀为“。ZIP”的文件中,无论从压缩比、压缩速度方面都超过了商业软件ARC。
更重要的是,他这个软件再也没有参考ARC的算法,而是使用了全新的压缩机制,并且他宣布不再兼容ARC格式。
就这样,菲利普将PKZIP作为自由软件免费发布之后,就立刻受到了全美各大BBS的站长们的欢迎,犹如星星之火,以燎原之势迅速在全美各大BBS上蔓延开来。站长们纷纷开始将原来使用的ARC格式压缩文件转换为ZIP格式。
SEA公司很快就因此而彻底从大家的眼前而消逝了,ZIP格式成为了互联网时代压缩软件的标准格式。
SAM协会想要将数据进行压缩,ZIP是最理想的选择,虽然市场上还存在着一些其他的数据格式,例如ARJ、LHA、CAB……等等,但是这些压缩格式要么就是属于专利产品,要进行付费,要么没有公布压缩技术细节,只有ZIP的作者菲利普,在两年前的时候,公布了ZIP压缩的所有技术资料。
所以,SAM协会最终选择ZIP作为自己的压缩格式。
但是还存在一个问题,那就是压缩文件传输到计算器中了,该如何读取里面的数据?
很显然不能使用PKZIP来直接读取,计算器中只有那么点地方,根本无法移植PKZIP,只能另外编写相应的解码程序。
要想编写解码程序,就必须了解ZIP格式使用的压缩算法,即”LZR算法”,这是一种无损数据压缩算法。也就是说原来是怎么样的,压缩并还原之后还得怎么样,一个字节都不能少。
这其中的原理其实很简单,因为计算机中数据都是用二进制表示的,只有“0”和“1”,有时候连续十个数字都可能是“1”,那么则直接可以标记为“这里有10个1”,而不用真的用十个“1”去填充。
通过这样的方式,就可以实
本章未完,点击下一页继续。