你列出的这两条指令,前一条不完整,缺少参数,后一条语法不对,漏了逗号。
C语言(和其它大多数高级语言)的函数和子程序(过程)在调用时的参数传递,是通过堆栈实现的。
调用时,先PUSH那些参数进栈,再CALL函数或子程序。
进入子程序后,需要用BP寄存器作为指针去访问堆栈中(不在栈顶)的这些传过来的参数。
8086 CPU 设计时就有了这样的考虑,寻址方式中规定BP作间址寄存器时缺省的段寄存器是SS,就是这样的目的。
于是,函数前面,总会有那么几条设置BP寄存器的指令。这是为取出那些函数调用时传递的参数而做的准备工作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)