ss:sp永远指向栈顶,ss放栈段地址,sp放栈偏移量,如果栈为空时,栈顶指向最后一个元素的下一个单元,8086cpu入栈(push)和出栈(pop)都是一字为单位(2个字节)
如图所示 :
入栈是先sp=sp-2再push入栈
出栈是数据先出栈然后sp=sp+2,如果栈为空时,就是把最后一个元素出栈,如下图:最后一个元素是ffff:2,出栈后sp=sp+2=ffff:4 所以栈顶为空时,栈顶指向最后一个元素的下一个单元
ss:sp永远指向栈顶,ss放栈段地址,sp放栈偏移量,如果栈为空时,栈顶指向最后一个元素的下一个单元,8086cpu入栈(push)和出栈(pop)都是一字为单位(2个字节)
如图所示 :
入栈是先sp=sp-2再push入栈
出栈是数据先出栈然后sp=sp+2,如果栈为空时,就是把最后一个元素出栈,如下图:最后一个元素是ffff:2,出栈后sp=sp+2=ffff:4 所以栈顶为空时,栈顶指向最后一个元素的下一个单元
相关文章: