检测点3.2

本文介绍了8086 CPU的栈操作原理,包括入栈和出栈的基本过程,以及栈指针SP和段寄存器SS的使用方式。通过具体的程序示例展示了如何利用push和pop指令实现数据的逆序复制。

知识点:1.8086CPU入栈和出栈操作都是以字为单位进行的。

2.任意时刻,SS:SP指向栈顶元素。

3.push、pop本质上就是一种内存传送指令,可以在寄存器和内存之间传递数据。

4.push指令的执行步骤:先 sp=sp-2 然后 向ss:sp指向的字单元中传送数据

5.pop指令的执行步骤:先从SS:SP指向的字单元中读取数据,然后SP=SP+2

6.一个栈的最大容量为64KB,这是因为SP是16位所引起。


检测点:(1).补全下面的程序,使其可以将10000H - 1000F中的8个字,逆序复制到20000H - 2000FH中。

mov ax,1000H

mov ds,ax

mov ax,2000H

mov ss,ax

mov sp,000FH

push [0]

push [2]

push [4]

push [6]

push [8]

push [A]

push [C]

push [E]

(2)补全下面的程序,使其可以将10000H - 1000FH中的8个字,逆序复制到20000H - 2000FH中

mov ax,2000H

mov ds,ax

mov ax,1000H

mov ss,bx

mov sp,000FH

pop [E]

pop [C]

pop [A]

pop [8]

pop [6]

pop [4]

pop [2]

pop[0]


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值