[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

【出题】批处理实现16进制数据最小体积存储

  1. 4D5A90000300000004000000FFFF0000B800000000000000400000000000000000000000000000000000000000000000000000000000000000000000E00000000E1FBA0E00B409CD21B8014CCD21546869732070726F6772616D2063616E6E6F742062652072756E20696E20444F53206D6F64652E0D0D0A2400000000000000484CF28A0C2D9CD90C2D9CD90C2D9CD90C2D9CD90F2D9CD9633296D9072D9CD98F3192D90D2D9CD9633298D90F2D9CD90C2D9DD91C2D9CD93A0B96D90D2D9CD9526963680C2D9CD9000000000000000000000000000000000000000000000000504500004C0103002B63CA4D0000000000000000E0000F010B0106009001000030020000000000008E02000050020000E003000000004000100000001000000004000000000000000400000000000000100600005002000000000000030000000000100000100000000010000010000000000000100000000000000000000000340400003C0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000E0030000440000000000000000000000000000000000000000000000000000002E7465787400000082010000500200009001000050020000000000000000000000000000200000602E72646174610000CA010000E0030000D0010000E0030000000000000000000000000000400000402E646174610000005C000000B005000060000000B0050000000000000000000000000000400000C0837C2404037D0F68C4054000E827000000596A0158C38B44240833C95151FF7008FF700451E85201000068C0054000E8040000005933C0C3FF25E0034000558BEC6AFF682804400068C003400064A100000000506489250000000083EC205356578965E88365FC006A01FF150C04400059830D00064000FF830D04064000FFFF15080440008B0DFC0540008908FF15040440008B0DF80540008908A1000440008B00A308064000E8C3000000833DE005400000750C68BC034000FF15FC03400059E89400000068BC05400068B8054000E87F000000A1F40540008945D88D45D850FF35F00540008D45E0508D45D4508D45E450FF15F403400068B405400068B0054000E84C000000FF15F00340008B4DE08908FF75E0FF75D4FF75E4E8DFFEFFFF83C4308945DC50FF15EC0340008B45EC8B088B09894DD05051E80F0000005959C38B65E8FF75D0FF15E4034000FF25E8034000FF25F803400068000003006800000100E80D0000005959C333C0C3C3FF2510044000FF2514044000FF251C0440000000000000000000000000000000B4040000C8040000D0040000DE040000E6040000F6040000060500001205000026050000360500004605000054050000660500007A05000000000000880500000000000000000000FFFFFFFF7E03400092034000700400000000000000000000BC040000E0030000AC04000000000000000000009E0500001C0400000000000000000000000000000000000000000000B4040000C8040000D0040000DE040000E6040000F6040000060500001205000026050000360500004605000054050000660500007A050000000000008805000000000000A1027075747300004D53564352542E646C6C0000D3005F657869740048005F5863707446696C74657200490265786974000064005F5F705F5F5F696E6974656E760058005F5F6765746D61696E61726773000F015F696E69747465726D0083005F5F736574757365726D61746865727200009D005F61646A7573745F6664697600006A005F5F705F5F636F6D6D6F646500006F005F5F705F5F666D6F6465000081005F5F7365745F6170705F747970650000CA005F6578636570745F68616E646C6572330000B7005F636F6E74726F6C667000003E0055524C446F776E6C6F6164546F46696C6541000075726C6D6F6E2E646C6C0000000000000000000000000000000000000000000000004F4B210055736167653A20444F574E203C75726C3E203C706174683E000000000100
复制代码
设计一种编码批处理变量存放方案,将上面的字符信息用尽量少的字符个数储存,当使用的时候,又可以用相应的方案还原。
简单的理解就是类似于数据压缩与解压缩操作。

要求,用cmd的内部命令实现。
----------------------------------------
PS: 这个“设计方案”所含的批处理代码不要过长,体积的计算要把这个“设计方案”所含代码和储存信息一起计算。

当然,如果方案能通用的话,可以适当放宽设计方案所含代码的长度

本帖最后由 plp626 于 2011-5-11 23:21 编辑

PS: 这个“设计方案”所含的批处理代码不要过长,体积的计算要把这个“设计方案”所含代码和储存信息一起计算。

当然,如果方案能通用的话,可以适当放宽设计方案所含代码的长度

-----------------------------------

有人也许会问这个能干什么? 我说下应用,当然还是娱乐,但“娱乐度”比较高,呵呵。

有个霍夫曼编码,可以对所发报文以最短编码存储,我们把他应用到bat2any(利用debug写文件)那个程序里,可以最大限度的压缩文件的体积,

假如有人想把三方工具嵌入到bat中,这样体积可以压缩很多多多。。。。

TOP

3# hanyeguxing


上面这个exe文件体积就1K多,选择编译的时候我加了/align:16,体积最小模式,upx没法再压缩了

TOP

我目前,理论上,

可以把一楼的数据压缩到1100 字节左右(不含解压代码)

也就是压缩为原来体积的37%左右。

不知大家的结果是怎样的?

TOP

15# terse


貌似是个新颖的想法, 但我没理解你的思路,能说详细点么?

TOP

有损压缩 一般用于图行领域,也没能力研究。

我考虑的是exe可执行文件或者rar压缩文件,当然不能有半点损。

TOP

本帖最后由 plp626 于 2011-5-13 17:18 编辑

我目前,理论上,

可以将一楼的数据 至少 压缩 掉 2/3,即压缩为原来体积 1/3 以下(不含解压代码),突破1000字节。

如果再引入字典删去重复,将接近1/4,即压缩到接近900字节或少于900字节。

TOP

特殊编码存放测试[code]

TOP

  1. 亗儎厗噲墛媽崕彁憭摂晼
复制代码

TOP

返回列表