位置:首页 > IC型号导航 > 首字符S型号页 > 首字符S的型号第106页 > ST7PLITE05Y0B6 > ST7PLITE05Y0B6 PDF资料 > ST7PLITE05Y0B6 PDF资料1第23页

ST7LITE0xY0 , ST7LITESxY0
CPU寄存器
(续)
堆栈指针( SP )
读/写
复位值: 00 FFH
15
0
7
1
1
SP5
SP4
SP3
SP2
SP1
0
0
0
0
0
0
8
0
0
SP0
堆栈指针是一个16位寄存器,它是AL-
如何指向堆栈中的下一个空闲位置。
它然后递减数据一直推后
入堆栈的数据是前递增
从堆栈中弹出(参见
图12)。
由于堆栈是64字节深, 10个最显
着的位由硬件强制。下面的
MCU复位,或者复位后堆栈指针的指令
化( RSP ) ,堆栈指针包含其复位val-
UE的(在SP5到SP0位被设置),它是在堆栈
更高的地址。
图12.堆栈操作举例
通话
子程序
@ 00C0H
打断
EVENT
PUSH
堆栈指针的最显著字节
(称为S ) ,可以直接由一个LD访问IN-
梁支。
注意:
时的下限被超过,则栈
指针回到堆栈上限,与 -
出指示堆栈溢出。先前
存储的信息是那么覆盖, there-
前丢失。该协议栈也包装在一种情况下的不足
流动。
堆栈是用来保存返回地址能很好地协同
子程序调用,并且在CPU方面
一个中断。用户还可以直接操作
栈的PUSH和POP指令的方式
系统蒸发散。在中断的情况下,在PCL存储
在第一位置由SP指向。然后,
其它寄存器中存储的下一个位置作为
所示
图12 。
- 当接收到一个中断时,SP是递减
mented和上下文推入堆栈。
- 从中断返回时, SP加
和上下文被从堆栈中弹出。
子程序调用占据两个位置和IN-
中断五个位置中的堆栈区。
POP
IRET
RET
或者RSP
SP
SP
CC
A
X
PCH
SP
PCH
@ 00FFh单元
的PCl
的PCl
PCH
的PCl
Y
CC
A
X
PCH
的PCl
PCH
的PCl
SP
CC
A
X
PCH
的PCl
PCH
的PCl
SP
PCH
的PCl
SP
堆高地址= 00FFh单元
叠低地址= 00C0H
23/124
1