四、子程序设计

四、子程序设计

在用汇编语言编程时,应当恰当地使用子程序,使整个程序的结构清楚,阅读和理解方便。通常把一些基本操作功能编制为程序段作为独立的子程序,以供不同程序或同一程序反复调用。在程序中需要执行这种操作的地方放置一条调用指令,当程序执行到调用指令,就转到子程序中完成规定的操作,然后返回到原来的程序继续执行下去,其流程如图4-18所示。

调用子程序的指令有“ACALL”和“LCALL”,子程序返回主程序的指令是RET。

图4-18 主程序调用子程序与从子程序返回示意图

【例4-21】用程序实现c=a2+b2

解:这个题目可以用子程序来实现。即通过两次调用查平方表子程序来实现。程序清单如下:

查表子程序的入口参数和出口参数都是A,不必进行现场保护。第一次调用后把返回参数A暂存于R1,以便空出A,进行第二次的调用和返回。参数传递的方法是直接通过A传送运算的数据。