8086CPU提供的栈机制简介

我们先简单提一下栈的概念:栈是一种具有特殊访问形式的存储空间,特殊性在于数据后进先出。


8086提供入栈(PUSH)和出栈(POP)指令:比如push ax表示将AX寄存器中数据送入栈中,pop ax表示将栈顶取出数据送入AX寄存器中(数据的存取按小端存放的规则)

8086CPU提供的栈机制简介_第1张图片

8086CPU提供的栈机制简介_第2张图片

mov ax,0123H

push ax

mov bx 2266H

push bx

mov cx 1122H

push cx

pop ax

pop bx

pop cx


有关栈存储空间的位置,8086提供了ss(段寄存器):sp(偏移地址8086CPU提供的栈机制简介_第3张图片


push ax

先将sp = sp-2

然后将数据压入栈空间

pop ax

先将数据传到AX中,然后sp = sp + 2

8086CPU提供的栈机制简介_第4张图片


栈的操作都是以字为单位的。



你可能感兴趣的:(汇编语言)