《程序是怎样跑起来的》第六章有感

我们都知道有压缩文件,但不知道这些文件是如何来的,更不用提我们尝试过怎么压缩一些文件。在读完第六章后,明白一些文件的压缩机制和一些压缩方法,像第六章中讲到的RLE算法,不看这些知识,我是不知道这些压缩文件的方法的,在第六章开头,它为我们讲述了简单的压缩方法如(AAAAAABCCDDEEEEEF)用RLE算法怎样压缩,面对这样的问题,除了学过的同学一外,估计新看的我们肯定是一脸茫然,不过RLE算法是简单的,它的压缩方法为每个字符后面标识出现的频率,像这样(A6B1C2E5F1)这就压缩好了。书中第六章还讲述了,文本文件压缩复杂的原因,与之前的各种文件相比,文本文件各字符出现重复的次数太少,因此在用RLE算法后的字符位数是压缩前的俩倍,看来文本文件压缩是比较复杂的。在文章深读后,还讲述了莫尔斯编码和哈夫曼算法这两种压缩方法,不过俩者是有区别的,前者需要我们摒弃原有算法的机制,就是不能认为一个字符就是一个字节,这使我好奇,不过在书中演示后,同样得到很好的压缩效果。哈夫曼算法,是另一中压缩方法,它的机制是利用哈夫曼树来实现文件压缩的。这种方法就好比数学中的树型结构一样,不过区别太大,它的机制与大自然的树是倒过来的,先有叶后有枝、根,书中图例有通俗的讲解。最后,书中讲述了几中图像文件的数据形式如BMP(完全未压缩的图像文件数据),此外还有JPEG、TIFF、GIF等图像文件数据形式,在未读这本书之前,我只认识GIF这个图像文件,其他的一概不知。在书中讲述的可逆压缩文件和非可逆压缩文件是以是否可以还原未压缩之前来区别的。

 

posted on 2019-02-07 16:51  程序代王  阅读(96)  评论(0编辑  收藏  举报