执行retn、call、leave指令的时候,esp和eip的变化情况
2010-08-10 21:21
183 查看
windows 32位汇编的环境下
[b]0A10FF61 call 0A11FFAA[/b]
[b]0A10FF66 MOV EAX,DWORD PTR SS:[EBP+3C][/b]
call
2. retn
3. leave
[b]0A10FF61 call 0A11FFAA[/b]
[b]0A10FF66 MOV EAX,DWORD PTR SS:[EBP+3C][/b]
call
esp = esp - 4 [esp] = 0A10FF66 //将返回地址压入栈中 eip = 0A11FFAA //跳转到函数地址
2. retn
eip = [esp] esp = esp - 4 //将esp中的数据出栈到eip中
3. leave
mov esp,ebp pop ebp //还原函数栈
相关文章推荐
- 执行retn、call、leave指令的时候,esp和eip的变化情况
- 程序执行时,栈指针ESP和栈顶指针EBP的变化
- 测试分析SQL语句执行时,SQL Server内存的变化情况
- 执行 install.sh --clang-completer时候出现这种情况请问怎么处理?
- Push, Pop, call, leave 和 Ret 指令图解
- 关于杀进程关闭activity的时候onDestroy的执行情况
- Push, Pop, call, leave 和 Ret 指令图解
- retf,call 指令运行的详细情况
- 单片机中的ALE脚在执行什么指令的情况下会输出?
- 当call/apply传的第一个参数为null/undefined的时候js函数内执行的上下文对象是什么呢?
- linux执行脚本的时候显示执行过的每一条指令
- 查找pop pop ret call dword ptr [esp+nn]指令的方法
- 执行ajax时候,哪些情况会执行error的回调函数
- 【iOS】Swift3:执行save()的时候出现:Call can throw, but it is not marked with 'try' and the error is not handl
- HIVE 在执行大量数据JOIN的时候,容易产生内存不足的情况
- 有多个返回值的C函数返回的时候堆栈的变化情况要查查
- 当您Exchange 2010 提示没有权限查看内容,但是你的确是有这个权限的时候,可以执行以下指令!
- Mysql 执行指令desc 表名的时候报错
- 应用Druid监控SQL语句的执行情况
- try-catch-finally语句中有return语句时的执行情况