- 6
- 0
- 约4千字
- 约 8页
- 2017-02-09 发布于北京
- 举报
汇编语言的过程调与用c语言的函数调用
汇编语言的过程调用与c语言的函数调用 姓名:孙贵森 学号:201212301118汇编语言的过程调用,如果需要传递参数,一般有2种方法,通过寄存器来“传递”,或是通过参数来传递。(还有将所有参数制成参数列表并压栈的传递方法,但较少用。)通过寄存器来“传递”,不是真正意义上的传递,其只不过是事先在几个有限的CPU寄存器中设置相应的值后,再调用过程,过程再直接读取这些寄存器的内容。可想而知,此法犹如C语言中的全局变量,极易感染。而如果通过参数来传递,又不得不面临手工维护堆栈框架(stack frame)的重担。堆栈框架动态地存放着参数、调用过程的返回地址、过程局部变量、过程内的压栈等内容,也是不好对付的。一般情况下,一个普通的过程可能如下编写: Sum PROC? push ebp? mov ebp, esp? .....? pop ebp? retSum ENDP作为遵从C调用约定(Calling Convention)调用者,则需这样调用上述过程:push 5?; push 8; call Sum ; add esp, 4 * 2; 而如果遵从STDCALL调用约定,则:Sum PROC? push ebp? mov ebp, esp? ......? mov eax, [ebp + 12] ;? add eax, [ebp + 8];? ......? pop ebp? ret
您可能关注的文档
- 水利设计院待和遇发展.docx
- 矿井火灾事故的预与防处理.doc
- 水力学实验(最终评优为秀).docx
- 矿井火灾事故的预防处及理措施.doc
- 氯离子腐蚀机理及防文护章.docx
- 矿井瓦斯和二氧化碳级等鉴定报告改好.doc
- 矿井通风与安全所有考已过名词解释.doc
- 矿井重大灾害及其防预措施.doc
- 水务项目公司岗位说书明.doc
- 石油大学远程实践大业作常减压实习报告.doc
- 2026届甘肃省民勤三中高考化学三模试卷含解析.doc
- 2021年人力资源年终工作汇报 附2026年人力预算测算表 可直接套用.pptx
- 2021年直播间氛围打造提升停留时长培训课件.pptx
- 2026届广西钦州市第二中学高三第二次模拟考试历史试卷含解析.doc
- 2020应对儿童厌学叛逆专属心理健康教育宣讲课件.pptx
- 2026届江苏省南通巿启东中学5月高三月考物理试题.doc
- 2026年初中语文写作课件.pptx
- 2026年电子元件检测实训教程PPT.pptx
- 2026届安徽省肥东县圣泉中学高三下期末模拟联考数学试题.doc
- 广东省惠东县惠东高级中学2026届高三考前热身生物试卷含解析.doc
最近下载
- 2024-2025学年山西省太原市七年级(下)期中历史试卷.docx
- 装饰装修工程细部做法-完整.pptx VIP
- 2025年上海市金山区中考英语一模试卷.docx VIP
- (三诊)自贡市高2025届高三届第三次诊断性考试数学试卷 (含答案解析).pdf
- 第8课 丰富多彩的传统节日 课件 人民版中华民族大家庭.ppt
- 2024年科技部直属事业单位招聘笔试真题.pdf VIP
- 汽机部分质量通病防治措施.doc VIP
- (2023年浙江高考真题)2023年浙江省1月高考英语真题(原卷版).docx VIP
- 广西 2026 职教高考·14电子与信息大类对口升学(含本科及本科招专科6 档冲稳保排序).docx VIP
- 智能电网优化调度技术研究.docx VIP
原创力文档

文档评论(0)