第一章笔记传送门 👉 点击这里
第二章笔记传送门 👉 点击这里
第三章笔记传送门 👉 点击这里
第四章笔记传送门 👉 点击这里
第五章笔记传送门 👉 点击这里
第六章笔记传送门 👉 点击这里
第七章笔记传送门 👉 点击这里
第八章笔记传送门 👉 点击这里
第九章笔记传送门 👉 点击这里
第六章:亲自尝试压缩数据
- 文件的存储的基本单位是什么
1字节(=8位)(文件是数据的结合体) - DOC、LZH和TXT这些扩展名中,哪一个是压缩文件的扩展名
LZH(LZH是LHA等工具压缩过的文件的扩展名) - 文件内容用“数据的值x循环次数”来表示的压缩方法是RLE算法还是哈夫曼算法
RLE算法(例如AAABB这个数据压缩后就是A3B2) - 在Windows计算机经常使用的SHIFT JIS字符编码中,1个半角英数是用几个字节的数据来表示的
1字节(=8位) - BMP格式的图像文件,是压缩过的吗
没有压缩过 - 可逆压缩和非可逆压缩的不同点是什么
压缩后的数据能复原的就是可逆压缩,无法复原的是非可逆压缩
6.1 文件以字节为单位保存
- 从物理上对磁盘进行读写时是以扇区(512字节)为单位的,但是另一方面,程序则可以在逻辑上以字节为单位对文件的内容进行读写
- 在任何情况下,文件中的数据都是连续存储的
- RLE算法:数据x数据重复次数
常被用于压缩传真的图像等
举例:AAAAAABBCDDEEEEEF,压缩后为A6B2C1D2E5F1
6.3 RLE算法的缺点
- 可以不按照一个字节为单位,而是以字符串为单位来查找重复次数
6.4 通过摩尔斯编码来看哈夫曼算法的基础
- 需要注意一点:不管是不是满8位的数据,最终都要以8位为单位保存到文件中,这是因为磁盘是以字节为单位来保存数据的。为了实现这一处理,压缩程序的内容会复杂很多,不过作为回报,最终得到的压缩率也是相当高的
6.5 用二叉树实现哈夫曼编码
- 哈夫曼算法是:为各压缩对象文件分别构造最佳的编码体系,并以该编码体系为基础来进行压缩。
这部分不难,不再赘述
6.6 哈夫曼算法能够大幅提升压缩比率
嗯,确实不错
6.7 可逆压缩和非可逆压缩
- Windows的标准图像数据形式为BMP,是完全未压缩的。
- BMP:Windows自带的画笔来做成的一种图像数据形式
- JEPG:数码相机等常用的一种图像数据形式
- TIFF:是一种通过在文件头中包含标签就能够显示出数据性质的图像数据形式
- GIF:这种格式要求色数不超过256色