• 1911阅读
  • 6回复

CALL ,RET 与堆栈平衡 [复制链接]

上一主题 下一主题
 

只看楼主 倒序阅读 使用道具 楼主  发表于: 2014-07-20
— 本帖被 啊冲 执行取消置顶操作(2016-12-14) —

1.call命令是访问子程序的一个汇编基本指令。他的真正意思是向堆栈中压入下一行程序的地址,或者JMP到CALL的子程序地质处。
    
2.ret是与CALL相对应的命令。他可以理解为将当前的ESP中指向的地址出栈,或者JMP到这个地址。

3.堆栈平衡原理  如果要返回父程序,则当我们在堆栈中进行堆栈的惭怍的时候,一定要保证在RET这条指令前,esp指向的是我们压入栈中的地址,否子会出错,导致系统崩溃。
离线啊冲

只看该作者 沙发  发表于: 2014-07-20
感谢分享~
善者 慈悲心常在 无怨无恨 以苦为乐
默认压缩密码www.hifyl.com
文件分享密码问题:http://www.hifyl.com/read-htm-tid-4444.html
离线121770101

只看该作者 板凳  发表于: 2014-10-26
万恶的金币
离线121770101

只看该作者 地板  发表于: 2014-10-26
万恶的金币 万恶的金币 万恶的金币
离线lukeigun

只看该作者 4楼 发表于: 2015-01-19
感谢分享~
离线26011602001

只看该作者 5楼 发表于: 07-02
       谢谢
离线qinyaoqian

只看该作者 6楼 发表于: 07-11
学习了
快速回复
限100 字节
如果您在写长篇帖子又不马上发表,建议存为草稿
 
上一个 下一个