执行一条段内RET指令后,完成的操作是()
A: SP指针加2,然后从堆栈中弹出两个字节到IP
B: SP指针减2,然后从堆栈中弹出两个字节到IP
C: 从堆栈中弹出两个字节到IP,然后SP指针减2
D: 从堆栈中弹出两个字节到IP,然后SP指针加2
A: SP指针加2,然后从堆栈中弹出两个字节到IP
B: SP指针减2,然后从堆栈中弹出两个字节到IP
C: 从堆栈中弹出两个字节到IP,然后SP指针减2
D: 从堆栈中弹出两个字节到IP,然后SP指针加2
D
举一反三
- 设(SS)=3300H,(SP)=1140H,在堆栈中压入5个字数据后,又弹出两个字数据,则(SP)=?
- 若当前堆栈指针SP=2006H,当往堆栈压入2个字的数据,SP应指向______ H
- 堆栈指针SP总是指向栈顶,系统在将数据压入堆栈时,总是先将堆栈指针SP的值减2,然后在将数据送到SP所向的RAM单元。
- ( )指令是专用于中断服务子程序返回的指令,将栈顶内容弹出装入( )中,同时修改( )。 A: RETI;堆栈指针SP;程序计数器PC; B: RET;堆栈指针SP;程序计数器PC; C: RETI;数据指针DPTR;堆栈指针SP; D: RETI;程序计数器PC;堆栈指针SP;
- 执行一条出栈操作指令POP后,堆栈指针SP的值()。 A: 加1 B: 加2 C: 减1 D: 减2
内容
- 0
执行PUSH AX指令后,堆栈指针SP的内容是( )。 A: 减1 B: 减2 C: 加1 D: 加2
- 1
关于堆栈的操作,描述正确的是 A: 堆栈操作指令是用来完成压入和弹出堆栈操作的 B: PUSH指令操作是先移后入,完成操作后栈顶指针SP加2 C: POP指令操作是先出后移,完成操作后栈顶指针SP加2 D: 在执行完PUSH AX 后, AX的内容为空
- 2
下列关于堆栈操作指令正确的是( )? A: AT89S51的堆栈是“先进后出” B: 堆栈指针SP指向堆栈的栈顶位置 C: 堆栈指针SP指向堆栈的栈底位置 D: 执行出栈指令时,先将内容送入制定单元中,然后堆栈指针再减1
- 3
8086/8088CPU将数据从堆栈中弹出时,栈区指针的变化为( )。 A: SS内容改变、SP内容不变 B: SS内容不变、SP内容减2 C: SS内容不变、SP内容加2 D: SS和SP内容都改变
- 4
有关PUSH指令和POP指令,以下说法正确的有( )? A: PUSH指令中,先修正栈顶指针SP后,再将数据压入堆栈 B: PUSH指令中,先将数据压入堆栈后再修正栈顶指针SP C: POP指令中,先修正栈顶指针SP后,再将数据弹出堆栈 D: POP指令中,先将数据弹出堆栈后再修正栈顶指针SP