我有两个不同版本的gcc编译的目标文件:
文件名大小(字节)
a1.o 48194128
a2.o 41984052
a2.o的大小小于a1.o的大小。但是在被gzip压缩之后,a2.o.gz的大小大于a1.o.gz的大小。什么是理论基础?提前谢谢。
答案 0 :(得分:2)
文件大小和压缩大小之间没有直接关联。
即。 RLE压缩的样本(比GZIP差很多,但更容易显示想法):
通常,文件中的随机数据比可压缩文件少。
对于已编译的二进制文件,不同的选项可能会触发要包含的额外表(如源位置)或使用不同的(ASCII与UTF-16)字符串表示 - 所有这些都可能会改变压缩可以用于实际的文件中的重复次数压缩二进制文件。