首页
社区
课程
招聘
[求助]4句汇编代码的2个迷惑
发表于: 2008-12-12 23:59 2774

[求助]4句汇编代码的2个迷惑

2008-12-12 23:59
2774
有没有师傅表面解释解释这4句汇编代码的意思,在这里先谢过了!
:7C809D36 F6450C08                test [ebp+0C], 08;//这里ebp+0C做为什么数据类型的指针?

:7C809D3A 8945EC                  mov dword ptr [ebp-14], eax;

:7C809D3D 7465                    je 7C809DA4;

:7C809D4E 0FB607                  movzx eax, byte ptr [edi];//movzx是扩展指令,如果edi=0x01020304,那么程序执行后eax的值是多少,是怎么算的?

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
2
1.要么你的反汇编器不完善,要么你的配置有问题。这条指令完整的助词符是test byte ptr [ebp+0x0c], 0x08

2.这条指令是从内存中取一个字节,高位进行0扩展然后放于EAX寄存器中。而EDI是内存地址,或者说是指针,指令执行完后EAX的值与EDI的值没有直接关系,而是与EDI指向的内存中的那一个字节的值相等(高位零扩展意思就是作为无符号数来看其值相等)
2008-12-13 00:09
0
游客
登录 | 注册 方可回帖
返回
//