- 0
- 0
- 约3.18千字
- 约 3页
- 2024-02-23 发布于浙江
- 举报
高级语言反汇编程序的函数调用过程
摘要:本文说明高级语言编译成汇编语言后,高级语言中函数调用的汇编程序过程。
正文:高级语言编译成汇编程序以后,在高级语言中的函数调用的汇编程序过程如下:
1.将函数参数入栈,第一个参数在栈顶,最后一个参数在栈底。
2.执行CALL指令,调用该函数,进入该函数代码空间。
a.执行CALL指令,将CALL指令下一行代码的地址入栈。
b.进入函数代码空间后,将基址指针EBP入栈,然后让基址指针EBP指向当前堆栈栈顶,并使用它访问存在堆栈中的函数输入参数及堆栈中的其他数据。
c.堆栈指针ESP减少一个值,如44H,向上移动一个距离,留出一个空间给该函数作为临时存储区。
{
???//以上准备工作做好后,函数正式被执行,如下所示。
???d.将其他指针或寄存器中的值入栈,以便在函数中使用这些寄存器。
???e.执行代码。
???f.执行return()返回执行结果,将要返回的值存入EAX中。
???g.步骤2.d中的指针出栈。
}
h.将EBP的值传给堆栈指针ESP,使ESP复原为2.c之前的值。此时进入函数时EBP的值在栈顶。
i.基址指针EBP出栈,复原为2.b之前的EBP的值。
j.执行RET指令,“调用函数”的地址出栈,本函数返回到CALL指令的下一行。
3.函数返回到CALL指令下一行,将堆栈指针加一个数值,以使堆栈指针恢复到以上步骤1执
您可能关注的文档
- 三年级下册复习资料.doc
- 安娜弗洛伊德的儿童精神分析.docx
- 常用ActionScript动作速查手册.doc
- 人教版选修4《化学反应原理》模块综合测评(B卷).doc
- 舌苔黄腻症候鉴别分析.doc
- 电磁场和电磁波.doc
- 用广厦建空心楼盖.doc
- 计算机的基础硬件.docx
- 基于走班制的系统变革及其实践模式.docx
- 宝宝脾气大妈妈出招应对术.doc
- 2026人教版八年级英语下册Unit 2 单元阅读理解专项训练练习题.pdf
- 2026人教版三年级数学下册第二单元核心素养培优提升检测试卷(A3版)附答案.pdf
- 2024人教版八年级英语下册 Unit4 The Wonders of Nature 单元教学设计.pdf
- 2026届高三英语二轮复习讲义:热点话题精彩范文.pdf
- 河南商丘市2025-2026学年度第一学期期末考试九年级语文试卷(含答案).pdf
- 2025-2026学年广东省高二年级上册物理单元自主练习(一)含答案.pdf
- 2025-2026学年广东省高三年级上册物理单元自主练习(一)含答案.pdf
- 【计算题专项练习】人教版四年级数学下册 利用平移巧算周长与面积(含答案与解析).pdf
- 2024人教版八年级英语下册 Unit7 A Good Read教案.pdf
- 阿基米德原理-八年级物理下册课时同步分层训练(人教版) 解析版.pdf
最近下载
- 直播切片与传统直播的差异比较.pptx VIP
- 2026年工业大数据治理:智能制造数据质量报告.docx VIP
- 迅饶X2Modbus-Lite使用说明书-Ch.pdf VIP
- 2026年社会体育指导员(滑雪)职业技能等级认定题库.docx VIP
- 2026 年江西‘五方面人员’选拔乡镇领导班子考试参考题库.docx VIP
- 2026年临时用电事故案例分析培训.pptx VIP
- 【三套试卷】哈尔滨市小学六年级数学下册期末练习试题及答案(1).pdf VIP
- 六年级下册语文暑假阅读题专项训练30篇 含答案.docx VIP
- 工业机械设备能耗监测与优化方案.docx VIP
- GB 50300-2013建筑工程施工质量验收统一标准.pdf VIP
原创力文档

文档评论(0)