码迷,mamicode.com
首页 > 其他好文 > 详细

汇编 学到哪里写哪里——栈

时间:2017-06-15 12:54:00      阅读:241      评论:0      收藏:0      [点我收藏+]

标签:内容   技术分享   png   技术   栈的操作   cpu   越界   恢复   自己   

---恢复内容开始---

栈的两个操作入栈(PUSH) 出栈(POP)

技术分享

技术分享

原谅色

注意:任意时刻SS:SP指向栈定元素 SS和SP定义栈 

PUSH AX的执行, 做了两件事:

(1)SP=SP-2

(2)将AX的内容放到SS:SP指向的内存单元

技术分享

 

栈空的时候 SP指向什么?

技术分享

比如这个栈的战地(栈底)是1000FH 那么空战(空栈)的时候指向的是10010H

 

POP AX 执行过程与PUSH相反

(1)将SS:SP指向的内存单元的数据放到AX中

(2)SP=SP+2

技术分享

 

SS 和 SP只能指向栈的顶 但是存在栈的越界的问题

哼,你以为会有吗?不存在的。

8086CPU不保证我们对栈的操作不会越界,全靠自己。

编程的时候要小心。

原谅色

 

PUSH 和 POP指令的格式

PUSH __

POP   __

可以填:寄存器(AX)、段寄存器(SS)、内存单元(DS:[0000H])

 

PUSH 和 POP 实质上是一种内存传送指令

汇编 学到哪里写哪里——栈

标签:内容   技术分享   png   技术   栈的操作   cpu   越界   恢复   自己   

原文地址:http://www.cnblogs.com/zuosy/p/7015815.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!