VanCheer
驱动老牛
驱动老牛
  • 注册日期2002-02-21
  • 最后登录2003-08-28
  • 粉丝0
  • 关注0
  • 积分-20分
  • 威望-10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:10385回复:39

请大家帮我挑选一个压缩算法,要源代码(C/C++)

楼主#
更多 发布于:2002-07-26 13:14
要求
1,编译完了代码要小,最多5-10K
2,对二进制文件的压缩率在30%以上
3,速度别过分慢
请大家帮我看看,然后贴个源代码上来

最新喜欢:

okincnokincn
[img]http://www.driverdevelop.com/forum/upload/VanCheer/2003-03-21_mon.gif[/img][img]http://www.driverdevelop.com/forum/upload/VanCheer/2002-12-07_smallbaby.jpg[/img]
dijkstar
驱动牛犊
驱动牛犊
  • 注册日期2010-06-22
  • 最后登录2010-07-21
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2010-06-22 22:57
36楼的不错,我推荐minilzo
dengxin8888
驱动牛犊
驱动牛犊
  • 注册日期2006-01-14
  • 最后登录2010-09-20
  • 粉丝0
  • 关注0
  • 积分94分
  • 威望35点
  • 贡献值0点
  • 好评度12点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2009-12-07 23:18
能下载吗,看不到或
maxma_yang
驱动牛犊
驱动牛犊
  • 注册日期2009-02-06
  • 最后登录2009-02-06
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2009-02-06 22:13
能下载吗,看不到或.
woodhead
驱动牛犊
驱动牛犊
  • 注册日期2002-10-09
  • 最后登录2007-01-04
  • 粉丝0
  • 关注0
  • 积分20分
  • 威望2点
  • 贡献值0点
  • 好评度2点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2005-01-27 16:21
我跟你有曾经有一样测需求,是用在嵌入式产品的二进制源文件压缩,开始我使用lsw,压缩在60%,后来采用zip,压缩比在40%左右,现在我使用lzma(被我成为老杂毛算法,其实是rar的一个变种),压缩比在30%以下,是我找到的最适合的一种了,无论从代码的大小,接口封装还是解压速度都还不错。
推荐老兄试试。
附件名称/大小 下载次数 最后更新
2005-01-27_lzma.rar (7KB)  91
chen001
驱动小牛
驱动小牛
  • 注册日期2001-12-24
  • 最后登录2005-05-29
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-02-19 15:10
我以前找到过一个名字是j????的压缩程序,速度极快,压缩比也与RAR差不多,可惜源代码不知到那去了,等我找到了再告诉你吧
???
imafool
驱动牛犊
驱动牛犊
  • 注册日期2002-11-25
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2002-12-15 20:50
啊,源码下不到了?再贴啊。
请。
lugiwin
驱动牛犊
驱动牛犊
  • 注册日期2002-11-26
  • 最后登录2004-11-05
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-11-28 15:17
lzw 算法也不错喔
huffman我
use_id
驱动中牛
驱动中牛
  • 注册日期2002-03-11
  • 最后登录2006-01-07
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-11-13 21:06
没有人吗?

还没有人吗?

鬼子进村了,看你有没有人。
use_id
驱动中牛
驱动中牛
  • 注册日期2002-03-11
  • 最后登录2006-01-07
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望1点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-10-23 20:32
花猫,我测试过了,上面贴的那个Huffman压缩算法可以满足你的要求,代码不是很复杂,具体压缩的那部分不看也罢,抓住入口就行
Encode()是压缩
Decode()是解压


我给做decode怎么会出错,没有成功?
VanCheer
驱动老牛
驱动老牛
  • 注册日期2002-02-21
  • 最后登录2003-08-28
  • 粉丝0
  • 关注0
  • 积分-20分
  • 威望-10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-10-16 18:09
哦?我没用过MASM,你试试
mov [eax].AB_.x,ebx
[img]http://www.driverdevelop.com/forum/upload/VanCheer/2003-03-21_mon.gif[/img][img]http://www.driverdevelop.com/forum/upload/VanCheer/2002-12-07_smallbaby.jpg[/img]
ooze
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2004-03-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-10-14 16:59
在masm32里面
AB_ struct
 x DWORD ?
 y DWORD ?
AB_ ends
ABC_ struct
x DWORD ?
y DWORD ?
z DWORD ?
ABC_ ends

.data?
ab    AB_ <?>
abc  ABC_ <?>

.code
start:

mov ab.x , eax
mov ab.y, ecx
mov abc.x ,eax
mov abc.y, ecx
mov abc.z, ebp


end start
编译通过,运行通过,没检查ab,abc的值
Be a true hacker of Windows NT alike
ooze
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2004-03-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-10-14 16:58
AB_ struct
 x DWORD ?
 y DWORD ?
AB_ ends
ABC_ struct
x DWORD ?
y DWORD ?
z DWORD ?
ABC_ ends

.data?
ab    AB_ <?>
abc  ABC_ <?>

.code
start:

mov ab.x , eax
mov ab.y, ecx
mov abc.x ,eax
mov abc.y, ecx
mov abc.z, ebp


end start
编译通过,运行通过,没检查ab,abc的值
Be a true hacker of Windows NT alike
ooze
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2004-03-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-10-14 16:58
.data?
ab    AB_ <?>
abc  ABC_ <?>

.code
start:

mov ab.x , eax
mov ab.y, ecx
mov abc.x ,eax
mov abc.y, ecx
mov abc.z, ebp


end start
编译通过,运行通过,没检查ab,abc的值
Be a true hacker of Windows NT alike
VanCheer
驱动老牛
驱动老牛
  • 注册日期2002-02-21
  • 最后登录2003-08-28
  • 粉丝0
  • 关注0
  • 积分-20分
  • 威望-10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-10-14 14:22
我知道的国外的一些顶尖ASM高手(以ASM为主要开发语言,做的东西可能有好几百K,甚至上M),都是用TASM。
当然我用TASM是因为我比较喜欢Borland的东西。
[img]http://www.driverdevelop.com/forum/upload/VanCheer/2003-03-21_mon.gif[/img][img]http://www.driverdevelop.com/forum/upload/VanCheer/2002-12-07_smallbaby.jpg[/img]
ooze
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2004-03-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-10-14 14:20
谢谢花猫兄弟的指点
俺一直用masm32,这是个大家庭,好学习,tasm5+的好象没masm32的人多吧?tasm的 tut没怎么看过
Be a true hacker of Windows NT alike
VanCheer
驱动老牛
驱动老牛
  • 注册日期2002-02-21
  • 最后登录2003-08-28
  • 粉丝0
  • 关注0
  • 积分-20分
  • 威望-10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2002-10-14 14:16
什么是IDEAL mode啊?我还以为你们讲的不同是连接,编译的参数不同呢
Enters Ideal assembly mode. Ideal mode will stay in effect until it is overridden by a MASM or QUIRKS directive.

Copyright 1993 Borland International.
怎么用的?
我看到病毒代码都没有指示词呢

[编辑 -  10/14/02 by  ooze]

一般病毒里不用IDEAL模式,基本不讲模式,只是缺省的MASM模式,但用IDEAL写正常程序,是很方便的,很多人用TASM就是冲这一点。我也在学习。比如IDEAL模式里不同结构的成员可以重名,MASM模式不行。
[img]http://www.driverdevelop.com/forum/upload/VanCheer/2003-03-21_mon.gif[/img][img]http://www.driverdevelop.com/forum/upload/VanCheer/2002-12-07_smallbaby.jpg[/img]
ooze
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2004-03-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2002-10-14 13:59
什么是IDEAL mode啊?我还以为你们讲的不同是连接,编译的参数不同呢
Enters Ideal assembly mode. Ideal mode will stay in effect until it is overridden by a MASM or QUIRKS directive.

Copyright 1993 Borland International.
怎么用的?
我看到病毒代码都没有指示词呢

[编辑 -  10/14/02 by  ooze]
Be a true hacker of Windows NT alike
VanCheer
驱动老牛
驱动老牛
  • 注册日期2002-02-21
  • 最后登录2003-08-28
  • 粉丝0
  • 关注0
  • 积分-20分
  • 威望-10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2002-10-14 13:56
masm32和tasm5.0+有区别么?没什么大区别呀

TASM支持IDEAL模式,MASM不支持。
[img]http://www.driverdevelop.com/forum/upload/VanCheer/2003-03-21_mon.gif[/img][img]http://www.driverdevelop.com/forum/upload/VanCheer/2002-12-07_smallbaby.jpg[/img]
ooze
驱动牛犊
驱动牛犊
  • 注册日期2001-09-26
  • 最后登录2004-03-19
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
19楼#
发布于:2002-10-14 13:54
masm32和tasm5.0+有区别么?没什么大区别呀
Be a true hacker of Windows NT alike
上一页
游客

返回顶部