在汇编语言程序设计中,主程序与子程序之间进行参数传递的方法有哪些

在汇编语言程序设计中,主程序与子程序之间进行参数传递的方法有哪些,第1张

汇编语言中主程序与子程序脊如参数传递的方法有以下几种:

1.寄存器

寄存器法就是樱液启将入口参数和出口参数存放在约定的寄存器中。

优点:埋派数据传递书读快、编程较方便、节省内存单元。

缺点:当传递参数过多时候,由于寄存器个数有限,及寄存器的频繁使用,将导致寄存器不足。

适用:参数较少的子程序

2。约定单元法:

约定单元法顾名思义是吧入口参数和出口参数都放在事先约定好的单元中

优点:不占用寄存器、参数个数任意、每个子程序要处理的数据和送出的结构都有独立的存储单元

缺点:但用一定数量的存储单元,增加编程中对变量定义的难度

3.堆栈法

堆栈法是利用堆栈来传递参数的。

优点:参数不占用寄存器,和存储单元。参数存放在公共堆栈区,处理完后客恢复。参数个数一般不限

缺点:由于参数和子程序混杂在一起,存取参数时候必须小心计算它在堆栈中的位置。要注意断点的保存和恢复。

4.地址表法

这种方法是把参数组成的一张参数表放在某个存储区中,然后只要主程序和子程序约定好这个存储区的首地址和存放的内容,在主程序中将参数传递给地址表,在子程序中根据地址表给定的参数就可以完成 *** 作。

传递方式有:

1、利用寄存器传递。比轿伏如返回单个函数值(整数、布尔值)时,用ax 寄存器。

2、利用栈传递。

3、利用全局变量传递。

4、利用磁盘文件戚帆岩传递。高御

由主程序将要传递的参数传入事先约定好的寄存器中,进入子程序中,再直接取出进行处理

事先在存储器开辟一片特定的空间用于存放腔者迅入口参数和出口参数

本质:利用寄存器实现多参数传递(寄存器中保存地址表的首地址)

将所有参数的地址存入地址表中,然后再将地址表的首地址传送到子程序。在嫌镇子程序中,可以按照地址伍此表中给出的地址,依次取出参数


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存