首页
社区
课程
招聘
[旧帖] 谁帮我分析一下下面的代码 0.00雪花
发表于: 2007-2-25 22:11 3342

[旧帖] 谁帮我分析一下下面的代码 0.00雪花

2007-2-25 22:11
3342
00402A9F  |> \8D740E FC     LEA ESI,DWORD PTR DS:[ESI+ECX-4]
00402AA3  |.  8D7C0F FC     LEA EDI,DWORD PTR DS:[EDI+ECX-4]
00402AA7  |.  C1F9 02       SAR ECX,2
00402AAA  |.  78 11         JS SHORT _UnPacke.00402ABD
00402AAC  |.  FD            STD
00402AAD  |.  F3:A5         REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
00402AAF  |.  89C1          MOV ECX,EAX
00402AB1  |.  83E1 03       AND ECX,3
00402AB4  |.  83C6 03       ADD ESI,3
00402AB7  |.  83C7 03       ADD EDI,3
00402ABA  |.  F3:A4         REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
00402ABC  |.  FC            CLD
00402ABD  |>  5F            POP EDI
00402ABE  |.  5E            POP ESI
00402ABF  \.  C3            RETN

特别是这句: REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
怎么也看不懂

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 331
活跃值: (56)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
2
while(!ecx)
{
movs [edi]<-[esi];
}
2007-2-25 23:49
0
雪    币: 101
活跃值: (12)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
3
00402AAD  |.  F3:A5         REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI]
00402AAF  |.  89C1          MOV ECX,EAX
00402AB1  |.  83E1 03       AND ECX,3
00402AB4  |.  83C6 03       ADD ESI,3
00402AB7  |.  83C7 03       ADD EDI,3
00402ABA  |.  F3:A4         REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]

================================

typedef unsigned long DWORD;
DWORD ecx, *edi, *esi;

while(!ecx--)
{
*(edi++) = *(esi++);
};

仔细想想为什么
2007-2-26 14:08
0
游客
登录 | 注册 方可回帖
返回
//