(1)程序运行过程中,发生子程序调用时,主程序与子程序之间的参数传递有哪些方式?
子程序的设计时需要有明确的入口条件和出口条件,主程序调用前应将需要计算的参数送入子程序所指定的位置。这一过程也可以理解为主程序与子程序进行参数传递的过程,参数的传递可以通过寄存器、存储器或者堆栈来完成。通常情况下,需要传递的参数较少时,可采用寄存器方式传递参数;数据较多时,最好采用存储器或堆栈的方式进行参数传递;如果子程序调用的过程中发生了子程序的嵌套使用,这种情况下推荐采用堆栈来完成主程序与子程序间的参数传递。
举一反三
- 可以在()中调用子程序, A: 主程序 B: 子程序 C: 中断程序 D: 通信程序
- 以下不能用作调用程序与子程序之间的参数传递主要方式的是
- 主程序与子程序的程序段可以被其它程序调用。
- 主程序调用一个子程序时,假设被调用子程序的结束程序段为M99P0010;该程序段表示()。 A: 调用子程序10次 B: 再调用O0010子程序 C: 跳转到子程序的N0010程序段 D: 返回到主程序的N0010程序段
- 在子程序的开始处保护现场,返回前恢复现场的目的是() A: 保证调用程序和子程序之间的参数传递 B: 保证调用程序正确转入子程序 C: 保证子程序正确返回调用程序 D: 避免调用程序和子程序之间的产生公用寄存器冲突
内容
- 0
程序执行过程中,调用子程序的程序称为主程序。子程序的调用过程是通过()指令实现的 A: LCALL B: PUSH C: POP D: ACALL
- 1
FANUC0i系统中,主程序调用一个子程序时,假设被调用子程序的结束程序段为M99P0010,该程序段表示() A: 调用子程序10次 B: 再调用O0010子程序 C: 返回到主程序的N0010程序段
- 2
子程序的格式是() A: 用M98指令调用某个子程序 B: 主程序中,在调用子程序的程序段之后的程序段都是子程序 C: 子程序的第一个程序段必须用G00指令进行定位 D: 子程序中如果沿用前面主程序中指令的进给进度,则不必再指定F的值 E: 子程序调用结束后,程序运行将返回到主程序中调用子程序的程序段的下一个程序段
- 3
子程序的命名方法与主程序相同,但子程序中不能再调用子程序
- 4
被主程序调用的程序为子程序