汇编语言——子程序设计分析

汇编语言——子程序设计分析,第1张

入口参数:主程序提供给子程序用来加工的数据,子程序的输入数据

出口参数:子程序返回给主程序的处理结果的数据,子程序的输出数据

现场:主程序在跳转子程序前使用到的资源,包括:寄存器、存储器里的数据

保护:避免子程序在执行时修改寄存器内存,造成返回主程序后现场变动,从而导致程序运行错误,故需要对现场保护

注意点:

这样定义的:

子程序名 PROC     NEAR|FAR

             .

              .

            RET

子程序名 ENDP

子程序名相当于标号,表示本过程的符号地址。过程有NEAR和FAR两种类型,FAR型的过程可供段间调用,NEAR型过程仅供段内调用。

在一个过程中,至少要有一条返回指令RET,它可以书写在过程中的任何位置,但是过程执行的的最后一条指令一定是RET。

扩展资料:

注意事项

一、子程序调用指令

格式:CALL   [NEAR PTR]    子程序名

CALL指令的两个作用,1.将断点地址(CALL指令的下一条指令地址)压栈保存,2.转去子程序执行。

[NEAR PTR]可以省略。

二、返回指令

格式:RET     [N]

指令作用:实现子程序执行完后返回主程序的指令。从堆栈栈顶d出一个字数据(段内调用)送入IP作为返回地址。N是立即数,执行完RET之后,再将SP增加N,也叫“平栈”。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11313245.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存