找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4159|回复: 0
打印 上一主题 下一主题
收起左侧

文言文其实是一个很牛逼的压缩算法

[复制链接]
跳转到指定楼层
楼主
ID:3721 发表于 2016-6-13 00:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


     之乎者也,焉哉乎也
     文言文,咋一看,何其难兮,若无师者传道授业解惑,教其句读,真不能解其意。、
     而如今我们看文言文很多是有注释的。

     然而,在我们学校文言文的同时,如果从另一个角度来看,文言文还真的是一个很牛逼的压缩算法,是我们尔等编程人员,技术人员所望尘莫及的技术。

     既然扯到压缩,那就要说为什么要压缩。
     压缩,很多人都用过,也不用多说,什么rar,zip等。
     既文字被发明以来,如果知识只是靠口述代代相传,那人类的进步就太慢了。更何况口传也有口误,人记忆也是有限,因此也才有很多技术是在代代相传中失传了。
     于是人们想到了用文字来记。
     而象形文笔,一开始只是用来做一些记号,标记,并未作通信,交流用的。

     而在更早,比如老张和隔壁老王一起去打猎,由于当时还没有阿拉伯数字也没有罗马数字,更没有什么一二三了,于是只好用用摆石头来统计谁打的猎物多, 大家把猎物放一块,根据自己的石头来记录谁打下了多少猎物。万一隔壁老王使诈,自己多放了一块石头,那是谁对谁错也不知道。
     就像一个普通没有带校验的文件,如果一个字节错误了,一般也不会知道的。

    那么问题来了,当老王打猎的技术越来越厉害,隔壁的三姑六婆也想请教学习学习,想让后代的人也可以向隔壁老王一样优秀。
那么老王就想这些技术写下来。 然而那时候还没有文字,隔壁老王只能自己和大家说自己的技术,有些领悟能力好的,也能学习到一些技术,但这样口述,老王也教不了多少人。

    于是老王等啊等啊, 等了几百年后,终于开始有文字了。终于迎来了甲骨文,老王打猎抓了几只乌龟,在龟背上刻画了一些关键图形,这就是原始的压缩编码,但是这时候也只有老王看得懂,那怎么办,所以,他需要教别人。所以,老王只是教会了几个人,别人就可以拿着那龟背,再向另人教学了。这样一传十,十传百,老王就出名了。可是,隔壁镇的人听说了老王会打猎,大家都想学习,可是,不能让老王一个人去对每一个说吧。而且,龟背那么重,怎么运输呀。唉,看来老王有心无力了。

   于是老王等着等呀, 这时候开始有竹简来记录文字了,而且这时候的文字也多了很多。不再是简单的甲骨条文。
这时候,周朝统一天下,礼节开始盛行,文明早已开始,不再是以前的打猎生活时代。老王也开始化身知识分子。

  一天老王去河边钓鱼,看见有漂亮的姑娘,然而现在已经是文明社会,不再是以前原始部落。要是在以前的原始部落,老王就直接一棍打晕了,把姑娘拖进山洞即可。(此故事可参照电影《石器时代》(美国电影))。这时候老王也是文人了,既然文人就要有文人的作风,那就写情诗吧。于是就到旁边,简单弄了竹简,写些什么呢,左想右想,那就写关关鸣叫的水鸟,栖居在河中沙洲,善良美丽的姑娘,好男儿的好配偶……(此处暂时省略翻译版的几十字),老王一起,尼玛,不对,这竹简太小,写不下那么多字呀,可是,怎么办呢,又不能只想说姑娘呀,你很漂亮,我想追求呀,总得需要写些情景烘托一下,才能显示我佳人才子的优势呀。于是,就写了这样“关关雎鸠,在河之洲,窈窕淑女,君子好逑”,嗯,不错不错,字句工整,朗朗上口,后人一定能很好流传。于是一篇关关雎鸠开启了情书届的潮流。
   人家姑娘莫名收到一竹子,我去,这是什么呀,我一姑娘家,大家不识一个,而且不是说女子无才便是德嘛,我这么贤德之人,这什么玩意,没有宝马数匹,豪宅数间,给我滚粗。
    然后孔子却不是这看,关关雎鸠这么肺腑之表白,如果我是个姑娘,我一定会感动的接受,为他生孩子。感动呀,人家都不知道你写的是什么呀。

  压缩算法也不是随便用的,一个会压缩,也要另一个支持解压才对呀。
  于是孔子引领了解压潮流,儒家思想要盛行,就要传播。可是当时只有竹简,儒家思想只是一两片竹简可以描述的,用罄竹难书都不为过(这个成语是贬义词,用在这里不合适,这是错误用法)。

这就是开始了文言文和压缩和解压的一个盛世,也就是百家争鸣的时代了。什么儒家,道家,墨家,法家呀,就好比什么Defalte,BZip,
  LZMA压缩算法呀。
这只是个大概,当年孔子传播儒学,那些弟子都是把一车一车竹简拉着,要不是有一些弟子稍微有钱一些,要不孔子拖着这些竹简也不好传播呀。

  就像压缩算法,或者说通信记录吧,为了保证可靠的通信,如果万一在压缩过程或传输过程,有几个位错误了怎么办,有可能有几个位错误了,表达的意思就不一样了。比如你向姑娘表白, 人家姑娘只是委婉地拒绝你,但是你看错了,以为是姑娘在给你机会,你还厚着脸皮不放手。
  那就要有好的算法有纠错了。
  那么,一个伟大的词语就出现了, 那就是通假字。

   不就是错了个字嘛,有什么大不了,老子知道他错了,不影响了继续理解就好。所以,只有在一定的误码率下,就能很原来的意思还原回来。就像BCH8校验,能支持到8个位错误了,还可以纠错呢。但是一旦错误太多了,那就没办法了。比如我向妹子表白说,我喜欢你。可是,她说,今晚月亮很圆。这是什么跟什么呀。错误地这么离谱,我怎么知道她是同意还是不同意了。我怎么知道是完蛋了还是团圆地意思呀。就好比你在windows下用rar压缩了,在linux下你tar怎么解压出来呀。

   文言文牛逼的之方,还在于它的容错性。要知道,古代的文言文是没有句读的,也就是没有标点符号的,我们现在看到的文言文很多是经过别人处理过了,至少也是加了标点符号的。可是,我怎么知道原来的意思就是你给我标注的呀。就好比有时候看历史,看正史不一定就是正确的,有时候野史才更真实。

   文言文这么深奥的东西,此是三言两语就能言论的。只是如果从编程的思想来看,古人已经有很多无法超越的经典,我们只是学习就好。(夜已深,改天再言论几番)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表