中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-13 22:46
47,812 主题排行 / 349,916 发帖 / 今日 0 篇 / 48,268 会员排行
论坛回收站 » 求一个简单的P处理
可打印版本  1,845 / 11
第1楼 loquat 发表于 2010-04-30 13:49
初级用户 发帖 80 积分 81
求一个简单的P处理
我有一个文件,里面每一行的格式都是这样。
0000: 0xA0090590 ; 0: void loopback0()
要求把所有都变成:
0000: 00000000 900509A0 ; 0: void loopback0()

如果有一个行的格式是这样。
开头有分号注释则不做处理。
;wxyz: 0xA0DDEEFF ; x: void func()
第2楼 Hanyeguxing 发表于 2010-04-30 15:09
银牌会员 发帖 897 积分 1,039 来自 在地狱中仰望天堂
楼主应该多贴几行,并说明,哪部分是固定不变的,哪些是变化的。
第3楼 loquat 发表于 2010-04-30 16:05
初级用户 发帖 80 积分 81

上面,每行第一部分都是0000-0004-0008-000C递增的,第一个冒号后有一个空格然后就是一个4字节16进制字符串,要求双位取反并前加'00000000空格'.后面分号后是注释,不作改变.
假如某一行开头是;表示该行注释掉了也不做处理.
其实就是每行分号后的内容都可以忽略不做处理.
当然能保持原状复制出来更好.

[ Last edited by loquat on 2010-4-30 at 16:11 ]
第4楼 yishanju 发表于 2010-04-30 17:08
银牌会员 发帖 1,357 积分 1,488
Originally posted by Hanyeguxing at 2010-4-30 15:09:
楼主应该多贴几行,并说明,哪部分是固定不变的,哪些是变化的。


- -要求上传样文。
第5楼 loquat 发表于 2010-04-30 17:13
初级用户 发帖 80 积分 81
吃完饭就上传.
就是这个文件了。。。

要求就是把中间的部分,添加00000000,然后双位取反。。。

[ Last edited by loquat on 2010-4-30 at 18:50 ]
第6楼 freeants001 发表于 2010-04-30 17:58
中级用户 发帖 244 积分 330 来自 湖北
Originally posted by loquat at 2010-4-30 13:49:
我有一个文件,里面每一行的格式都是这样。
0000: 0xA0090590 ; 0: void loopback0()
要求把所有都变成:
0000: 00000000 900509A0 ; 0: void loopback0()

如果有 ...




双位取反;)楼主还是用VBS,js,或C......
P处理位运算,(set /? 中可查到位运算),哪就不简单的了。。。。
第7楼 loquat 发表于 2010-04-30 18:51
初级用户 发帖 80 积分 81
vbs也可以的,谁会帮忙写一个?
我不是要做这个P处理,而是用这个文件导入到IDA里面学习东西的。。。
第8楼 slore 发表于 2010-04-30 19:10
铂金会员 发帖 2,478 积分 5,212
。。。
他说双位取反
是把地址格式ABCD变成DCBA
(其中ABCD均是2位。)

0000: 0xA0090590
0000: 00000000 900509A0
第9楼 loquat 发表于 2010-04-30 19:32
初级用户 发帖 80 积分 81
我这个双位取反应该是ABCD <-> CDAB
第10楼 yishanju 发表于 2010-04-30 19:48
银牌会员 发帖 1,357 积分 1,488
- -嘿
fr -ric:"(ab)(cd)" -t:"\2\1"
这样即可实现换位。

fr -ric:"(ab)(cd)" -t:"000000 \2\1"
在前补0

[ Last edited by yishanju on 2010-4-30 at 19:54 ]
第11楼 Hanyeguxing 发表于 2010-04-30 19:52
银牌会员 发帖 897 积分 1,039 来自 在地狱中仰望天堂
第12楼 freeants001 发表于 2010-04-30 20:23
中级用户 发帖 244 积分 330 来自 湖北
忘了前补0,加上;)



[ Last edited by freeants001 on 2010-4-30 at 20:35 ]
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023