汇编自定义一个简单的子程序会揭示比较严重且容易忽视的问题 不建议在调用时采用入栈出栈保存数据
发布时间
阅读量:
阅读量
需要注意的几点:
实现调用子程序的过程如下:第一步,在机器语言编程中,默认情况下必须遵循一定的步骤来实现函数或过程的调用。具体来说就是先使用CALL 指令来激活一个函数或过程入口参数的位置信息,在汇编语言中这通常表现为先执行一次 PUSH 操作以保存当前线程的基本状态信息等关键步骤
在调试程序之前遇到了诸多问题,并且均一一解决了。例如我认为其中有一个相对棘手的问题:

在操作过程中观察到,在执行主程序main时,我们设置了断点于下一条语句的IP位置,并且此时堆栈的状态如下:

然后,比如说我们输入了1,那么,分支程序的跳转将是这样:

好了,又到了调用子程序的时候了,所以,此时堆栈情况看下:

还没有任何评论哟~
