В теории информации существует понятие, называемое энтропия , которое является своего рода мерой «истинного» объема информации в сообщении (в вашем примере сообщение является SWF-файлом).Одной из общих единиц измерения, используемой для этой меры, является бит.
Файл с 1,21 МБ занимает приблизительно 10 150 215 бит.Однако его энтропия может составлять менее 10 150 215 битов, поскольку в данных имеется некоторый порядок или предсказуемость.Допустим, вы измерили энтропию этого файла и пришли к выводу, что энтропия составляет всего 9 000 000 бит.Это означает, что вы не можете сжать его без потерь до размера менее 9 000 000 бит.
Но алгоритмы сжатия заканчивают тем, что добавили еще немного данных к сжатым файлам, чтобы они могли распаковать его позже.Алгоритмы включают некоторую информацию о виде «сокращений», сделанных при сжатии данных.Это означает, что теоретический предел, заданный энтропией, не будет достигнут из-за этих дополнительных данных, специфичных для алгоритма.
Если ваш файл уже сжат, это означает, что его размер уже близок к энтропии исходных данных,Когда вы попытаетесь сжать его снова (и особенно в вашем случае, когда вы используете тот же алгоритм), уменьшение размера не будет значительным, и вы добавите еще один слой дополнительных данных, специфичных для алгоритма.Если дополнительные данные больше, чем уменьшение дополнительного размера, ваш дважды сжатый файл будет больше, чем сжатый только один раз.