当调用程序为子程序提供一定的参数或参数的地址,这些参数是通过堆栈传递给子程序时;在子程序运行结束返回时,这些参数或参数地址已经没有在堆栈中保留的必要。因此,使用带参数的返回指令RET n,以便废弃一些CALL指令执行前入栈的参数。
设栈顶地址为4000H,当执行RET 0008H后,执行SP ← SP+n的操作,SP=4008H。
(简答题)
带参数的返回指令用在什么场合?设栈顶地址为4000H,当执行RET 0008H后,SP指针的值是多少?
正确答案
答案解析
略
相似试题
(简答题)
带参数的返回指令用在什么场合?设栈顶地址为3000H,当执行RET 0008后,问SP的值是多少?
(简答题)
HLT指令用在什么场合?如CPU在执行HLT指令时遇到硬件中断并返回后,以下应执行哪条指令?
(简答题)
设当前SS=2010H,SP=FE00H,BX=3457H,计算当前栈顶的地址为多少?当执行PUSHBX指令后,栈顶地址和栈顶2个字节的内容分别是什么?
(简答题)
字节扩展指令和字扩展指令用在什么场合?举例说明。
(单选题)
若栈顶的物理地址是20100H,当执行完POPAX指令后,栈顶的物理地址是()。
(简答题)
堆栈的深度由哪个寄存器确定? 为什么说一个堆栈的深度最大为64KB? 在执行一条入栈或出栈指令时,栈顶地址将如何变化?
(单选题)
设SP=0100H,SS=2000H,执行指令PUSHBP指令后,栈顶(即SP所指向的单元)物理地址是:()
(简答题)
设计一个子程序,求带符号字数组中绝对值最大的数,返回其地址和最大值。 入口参数:DS:SI=数组首地址,CX=元素个数(大于0); 出口参数:ES:DI=绝对值最大的数所在的地址,AX=绝对值最大的数;
(简答题)
设计一个子程序,求带符号字数组中绝对值最大的数,并返回其他地址和该数。 入口参数:DS:SI=数组首地址,CX=元素个数(大于0)。 出口参数:ES:DI=绝对值最大的数所在的地址,AX=绝对值最大的数。