我正在学习汇编,想知道当你弹出一个空堆栈或增加 SP(堆栈指针)时会发生什么,而它已经是 FFFE,例如:
seg1 segment
org 100h
pop ax
mov ah,4ch
int 21h
seg1 ends
当我通过调试器运行程序时,我看到 SP 在执行 pop 命令后将指向 SP = 0000。为什么SP指向0000?是因为内存中的最大 SP 是 FFFF 并且它只是循环到第一个点吗?(我知道 SP 只会增加或减少 2,因为 push 和 pop 总是 2 字节)并且当命令执行时程序会在 SP = 0000 处弹出任何内容吗?
我正在使用 a86 宏汇编器 Oracle VM VirtualBox。谢谢你。