有时,编写代码来完成特定任务可能会变得冗余。在汇编语言中,尤其如此,因为指令的数量有限,大多数任务都涉及用它们做非常相似的事情。子程序是一组旨在执行程序中频繁使用的操作的指令。从某种意义上说,这就像在C或Java这样的语言中编写函数,但层次稍微低一些—特别是我们必须自己做更多的切换工作。
假设你想要将所有寄存器设置为零。有八个寄存器,所以写出来需要八条指令。如果你想在多个地方这样做,每次都写出八条指令就会变得很痛苦。相反,我们可以使用子程序,只写一次。为此,我们使用CALL(实际上是ACALL或LCALL)和RET指令。例如,
继续阅读