- 20
- 0
- 约7.67千字
- 约 54页
- 2017-03-03 发布于湖北
- 举报
8_高级过程讲述
汇编语言 lybliu@cuit.edu.cn, QQ (学校主页?教学平台) 第8章 高级过程 8.2 堆栈帧(stack frame) 8.4 INVOKE,ADDR等伪指令 8.2 堆栈帧(堆栈框架) CPU中用到堆栈的地方很多 通过PUSH和POP指令利用堆栈保存和恢复寄存器、变量等 CALL利用堆栈存放返回地址供RET指令使用 使用堆栈传递子过程参数 利用堆栈实现局部变量 堆栈帧的使用步骤 通常堆栈帧的创建步骤如下: 如果有需传递的参数,将各参数依次用PUSH压栈 通过CALL调用子过程,此指令自动将返回地址压栈 子过程开始,将EBP压栈 把ESP的值传给EBP,后续指令通过EBP访问堆栈空间,可以访问子过程的参数 如果有局部变量,则将ESP减去一个值,为局部变量保留空间。这些空间一样可以通过EBP来访问。 再对其他需要保存的寄存器压栈 堆栈代码示例 AddTwo proc Push ebp Mov ebp,esp Mov eax,[ebp+12] Add eax,[ebp+8] Pop ebp Ret AddTwo endp 8.2.2 寄存器参数的缺点 给子过程传递参数有两种基本方式 通过寄存器传递 执行效率高 代码可能显得混乱 寄存器数量有限 通过堆栈传递 方式灵活通用 效率偏低 通过寄存器传递参数的例子 ;… Mov esi , off
您可能关注的文档
- 23、西门豹治邺概要.ppt
- 23、核舟记.ppt概要.ppt
- 23_QOS原理及在EPON中的应用配置概要.ppt
- 23《黄帝》PPT课件概要.ppt
- 8.小书包课件ppt讲述.ppt
- 8.第六章PPT讲述.ppt
- 23中考二次函数压轴题解题通法概要.ppt
- 23《难忘的一课》人教版五年级上册概要.ppt
- 8.计划及其制定讲述.ppt
- 8.钢结构安装专业表格讲述.doc
- 第9课《桃花源记》课件 统编版语文八年级下册.pptx
- 第8课伟大的历史转折(大单元教学课件)历史统编版新教材八年级下册.pptx
- 第17课《短文两篇——陋室铭》课件-2025-2026学年初中语文统编版七年级下册.pptx
- 第13课+机の上に本が3冊あります+课件+2025-2026学年新标准日语初级上册.pptx
- 第12课《_诗经_二首关雎》课件(共20张ppt)统编版语文八年级下册.pptx
- 第17课《壶口瀑布》课件+2025-2026学年统编版语文八年级下册.pptx
- 第22课《礼记二则》课件 2025-2026学年统编版语文八年级下册.pptx
- 第22课《〈礼记〉二则——大道之行也》课件 -统编版语文八年级下册.pptx
- 第22课《大道之行也》课件-统编版语文八年级下册.pptx
- 第12课+辽宋夏金元时期经济的繁荣(情境化教学课件)历史统编版新教材七年级下册.pptx
原创力文档

文档评论(0)