在汇编语言程序设计中,主程序与子程序之间进行参数传递的方法有哪些
1.寄存器法
寄存器法就是将入口参数和出口参数存放在约定的寄存器中。
优点:数据传递书读快、编程较方便、节省内存单元。
缺点:当传递参数过多时候,由于寄存器个数有限,及寄存器的频繁使用,将导致寄存器不足。
适用:参数较少的子程序
2。约定单元法:
约定单元法顾名思义是吧入口参数和出口参数都放在事先约定好的单元中
优点:不占用寄存器、参数个数任意、每个子程序要处理的数据和送出的结构都有独立的存储单元
缺点:但用一定数量的存储单元,增加编程中对变量定义的难度
3.堆栈法
堆栈法是利用堆栈来传递参数的。
优点:参数不占用寄存器,和存储单元。参数存放在公共堆栈区,处理完后客恢复。参数个数一般不限
缺点:由于参数和子程序混杂在一起,存取参数时候必须小心计算它在堆栈中的位置。要注意断点的保存和恢复。
4.地址表法
这种方法是把参数组成的一张参数表放在某个存储区中,然后只要主程序和子程序约定好这个存储区的首地址和存放的内容,在主程序中将参数传递给地址表,在子程序中根据地址表给定的参数就可以完成操作。
寄存器、
内存单元、
指针、
堆栈。
寄存器、栈、内存、文件。
在汇编语言程序设计中,主程序与子程序之间进行参数传递的方法有哪些...
1.寄存器法 寄存器法就是将入口参数和出口参数存放在约定的寄存器中。优点:数据传递书读快、编程较方便、节省内存单元。缺点:当传递参数过多时候,由于寄存器个数有限,及寄存器的频繁使用,将导致寄存器不足。适用:参数较少的子程序 2。约定单元法:约定单元法顾名思义是吧入口参数和出口参数都放在事...
汇编语言程序设计程序结构可分为哪四种
顺序程序结构,分支或选择程序结构,循环程序结构,子程。顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用分支结构。分支结构的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。分支结构的程序设计方法的关键在于构造合适的分支条件和...
汇编语言循环程序设计和子程序设计原理
这段独立出来的程序叫做子程序或过程,调用它的程序称为主程序。采用子程序。使得设计结构清楚,程序的维护方便。当主程序需要执行这个子程序功能时,通过调用该子程序,执行子程序,子程序完成后返回主程序调用处,继续主程序后面的指令的执行。与子程序有关的指令有子程序的调用CALL、子程序返回RET两条指...
汇编语言中子程序是不是只有遇到RET才会返回主程序否则就继续运行下去...
不全是,一般情况下是有RET才返回主程序,但是如果子程序中有无条件或有条件跳转指令(条件满足)也可跳转到程序(含主程序、子程序、其他程序)的制定位置!
执行返回指令时返回的断点是
主程序(调用程序)执行调用指令CALL调用子程序,子程序(被调用程序)执行返回指令RET返回主程序中CALL指令的下条指令处。CALL指令的功能。在汇编语言中,子程序其实就是以一个标号起始,最后有类似C函数的返回指令的一段代码块,主程序可以在中途调用该代码块(其实就是跳转到子程序执行。
全国计算机等级考试三级分几类?
5.汇编语言程序设计:顺序程序、分支程序、循环程序、子程序、输入输出和中断处理。 六、微机测控技术 1.实时处理的基本概念。 2.微机测控系统的结构及其硬件、软件组成,分而式测控系统的概念。 3.STD及ISA总线微机测控系统主机的特点,多主STD总线测控微机系统及其通信方法,监控定时器(看门狗)的基本原理。 4.过程数字...
汇编 里的near 和far有什么用啊?
如果用户的子程序和主程序在同一个代码段,则使用near,调用发生后,主程序堆栈中只压入ip值。如果用户的子程序和主程序不在一个代码段,则使用far,调用发生后,主程序堆栈中将压入cs、ip值。举例:call 一个near过程,只把偏移地址压入堆栈,过程返回时用retn返回 call一个far过程,把偏移地址和段...
8088·8086汇编语言程序设计目录
首先,第一章《概论》涵盖了汇编语言的基本概念。在第一节中,通过引言引导读者了解汇编语言的起源和重要性;第二节则深入讲解汇编语言程序设计的原理;第三节介绍了汇编程序的基本构成和使用。接着,进入第二章,8088\/8086系统结构是理解汇编程序设计的关键。第一节详细描述了8088微处理器的硬件结构,第...
子程序的概念
主程序在执行过程中如果需要某一子程序,通过调用指令来调用该子程序,子程序执行完后又返回到主程序,继续执行后面的程序段。子程序(subroutine)是一个概括性的术语,任何高级程序所调用的程序,都被称为子程序。它经常被使用在汇编语言层级上。子程序的主体(body)是一个代码区块,当它被调用时就...
用汇编语言编写一个按钮控制8个流水灯的亮灭
51单片机汇编语言程序设计如下,实现通过按键控制8个流水灯的亮灭功能:KEY被定义为P3.2端口,LED被定义为P1端口。程序起始地址为0000H,跳转到主程序MAIN。主程序MAIN从0030H地址开始:清除00H单元的内容。将0FEH的值送入累加器A。进入循环LOOP。检查P3.2端口的状态,如果为低电平,跳转到LOOP1。如...