|
|
一般压缩结果有两种 压缩成压缩包 和压缩成自解压程序
在常见的压缩软件中 WINRAR功能多 但压缩率不算太高
7-ZIP( LZMA算法)压缩率较高
不过 WINRAR 对声音文件(WAVE格式)和 图像(BMP格式)进行了优化 所以压缩率超过7-ZIP
另外还有一种比较特别的压缩 对可执行程序的压缩——加壳 它不是像自解压程序那样,先解压到硬盘上,在执行程序,完全是在内存中完成
另外 7-ZIP 的压缩功能相当简陋
说一下普通压缩的原理 下面一段话
010,110,010,010,110,010 可以表示位 A=010 B=110 原文为ABAABA (加逗号是为了大家看起来方便)
加壳的原理比较复杂 简单地说是将多个指令合并为一个(或更少的指令) 例如
((X+3)÷9+6)×3 =X+27 (这只是例子,真实的情况不是这样)
强烈推荐两款软件
Compressfolder 它是基于NSIS (主要是LZMA算法) 的一款优秀的自解压程序制作软件
WinUpack 是本人见过的压缩率最高的加壳软件(点它的关于 有一项 "安装到SendTo (发送到)" 就可以集成到右键) 警告!!! WinUpack 不能压缩自解压否 则会破坏程序 丢失文件
大部分程序都已经加过壳了 所以它的 压缩可能不明显 但那些未加过壳 或脱壳过的程序压缩率是很高的
[ 本帖最后由 sha 于 2007-7-10 10:13 AM 编辑 ] |
|