读《程序是怎么跑起来的》第六章有感
作者:互联网
第六章亲自尝试压缩数据,知道了文件是字节数据的集合体,LZH是用LHA等工具压缩过的扩展名,例如AAABB这个数据压缩后就是A3B2,半角英文数字是用1个字节来表示的,汉字等全角字符是用两个字节来表示的,知道了压缩后数据能复原的就是可逆压缩,不能复原的就是非可逆压缩。
文件是以字节(B=Byte)为单位来储存的,文件就是字节数据的集合,RLE的算法机制,简称为把文件内容用“数据×重复次数的形式”来表示的压缩方法。但是RLE的算法也有缺点,在实际的文本文件中,同样字符多次出现的文件并不多见,要知道RLE不适合文本文件的压缩,然后在了解哈弗曼算法之前要抛弃掉之前“半角英文数字的1个字符是1个字节的数据”这一概念。文本文件是由不同类型的字符组合而成的,而不同的字符出现的次数也是不同的。还要知道磁盘是以字节为单位来保存数据的。之前认为的“莫尔斯编码的短点是0,长点是1,其中1个字符用8为来表示”,这是一种不成熟的做法,实际上根据字符种类的不同,莫尔斯电码符号的长度也有不同。
哈夫曼算法是指,为各压缩对象文件,分别构造最佳的编码体系,并以该编码体系为基础进行压缩,但是该程序要比RLE算法要复杂的多。但是该算法能大幅度提升压缩比例。最后的可逆压缩和非可逆压缩也不难理解,在文章的开始已经解释过了。
标签:文件,字节,有感,RLE,可逆,压缩,程序,算法,第六章 来源: https://www.cnblogs.com/qly123/p/10358951.html