80C51单片机堆栈中储存的是什么?

80C51单片机堆栈中储存的是地址吗?如果是地址,是什么的地址?还有除了地址外还能存储其他类的数据吗?... 80C51单片机堆栈中储存的是地址吗?如果是地址,是什么的地址?还有除了地址外还能存储其他类的数据吗? 展开
 我来答
做而论道
高能答主

推荐于2016-08-29 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
题目很有难度。

调用子程序时,堆栈中储存的是“调用指令下一条指令”的地址。
发生中断时,堆栈中储存的是“断点”地址。

利用PUSH指令,堆栈还能储存片内RAM、SFR等,各直接寻址单元中的数据。
zhxiufan
推荐于2018-03-21 · 知道合伙人软件行家
zhxiufan
知道合伙人软件行家
采纳数:14923 获赞数:38385
国家科技进步奖

向TA提问 私信TA
展开全部
8051单片机的堆栈主要存储程序运行中的一些中间变量或数据。
1、用户为编程方便临时保存的数据,比如:
MOV A,30H
PUSH ACC
ANL A,#0FH
MOV B,A
POP ACC
ANL A,#0F0H
ORL A,B
MOV 30H,A
2、子程序调用时,系统保护现场地址
3、中断服务是,系统保护现场地址
4、中断服务程序中,用户保护服务程序中需要改变的一些工作寄存器或其他寄存器、累加器等
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wsxtg
2010-08-06 · TA获得超过3794个赞
知道小有建树答主
回答量:1794
采纳率:0%
帮助的人:1160万
展开全部
一般是存放地址的.是程序执行到那一步的地址,用堆栈主要是为中断服务的.当有中断发生时,程序得去响应中断.中断完成后,程序得接着执行.所在在响应中断前,把程序执行到的地方(断点)记住.也就是保护现场.当中断完了.再取出断点的地址接着执行.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
铁书包
2010-08-06 · TA获得超过433个赞
知道小有建树答主
回答量:366
采纳率:0%
帮助的人:142万
展开全部
8051堆栈中存储的是什么要根据你的程序区判断,泛泛的说什么东西都可以存储到堆栈中,包括地址,程序的中间状态,数据的中间状态,就像pc的堆栈一样。而且堆栈是可以自己去扩充的,在内存中开辟区域当做堆栈使用!绝大数堆栈中存储的是中间结果,特别是对可以重入的函数,就非得用堆栈不可了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
卷豪GX
2010-08-06 · TA获得超过664个赞
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:209万
展开全部
堆栈中什么都可以储存的。不过一般都用于程序断点保护,保存当前工作状态
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式