查看完整版本: 如果使用超过5级以上的子程序调用,会出现什么情况?

liyf 发表于 2014-10-5 14:08:10

如果使用超过5级以上的子程序调用,会出现什么情况?

如果使用超过5级以上的子程序调用,会出现什么情况?

在调用子程序执行CALL指令时,首先把PC+1入栈,然后转载R2低十位值;RET指令则是把堆栈栈顶数据装入PC。
经实际测试,在使用六级子程序调用时,进入各级子程序都可以,但在返回时,5、4、3、2、1都可以返回上一
级子程序,0级子程序则不能正确返回主程序,而是在返回和调用一级子程序指令的下一条指令之间不断循环,
无法正确返回子程序。
页: [1]
查看完整版本: 如果使用超过5级以上的子程序调用,会出现什么情况?