关于51汇编子程序的PUSH命令的使用问题

[复制链接]
4768|10
 楼主| lovelyegle 发表于 2010-1-22 11:51 | 显示全部楼层 |阅读模式
51单片机,使用汇编语言,如果是中断操作肯定需要进堆栈(PUSH)和出堆栈(POP)命令操作。但是子程序却未必,那么什么时候子程序用(PUSH,POP )命令?请各位高手指点!这个问题实在是好笑,但对于初学单片机的我来说,还挺麻烦!
David_ming 发表于 2010-1-22 16:26 | 显示全部楼层
当你需要保存一些数据的时候可以考虑用PUSH,还有传递参数的时候也可以考虑用PUSH,这样写程序会比较方便,但是要注意,一定要成对的使用PUSH POP,不然,当你返回的时候PC被装载的数据就会出错,程序就飞了
god_like 发表于 2010-1-22 21:31 | 显示全部楼层
“这个问题实在是好笑,但对于初学单片机的我来说,还挺麻烦!”
这个问题有什么好笑的,没看出来
jerkoh 发表于 2010-1-23 22:52 | 显示全部楼层
如 某过程执行到  mov r0,#33h
                        ;被中断
                 mov  a,@r0

而 高休先级中断 进入
   需要执行 mov r0,#22h
                  那必须压栈
linhai1986 发表于 2010-1-23 23:27 | 显示全部楼层
楼上两位说的都是挺好的
suoma 发表于 2010-1-24 16:20 | 显示全部楼层
大概楼主还很害羞
sz_n053 发表于 2010-1-24 17:00 | 显示全部楼层
一般在中断里用较好...
Karlshen 发表于 2010-1-24 18:14 | 显示全部楼层
7# sz_n053
貌似没仔细看人家问啥吧?
sz_n053 发表于 2010-1-24 20:54 | 显示全部楼层
喔.....若要提供别人使用函式时, 可用....
xiaoxin1986 发表于 2010-1-24 22:13 | 显示全部楼层
发现楼主的专家等级很到
 楼主| lovelyegle 发表于 2010-1-26 12:37 | 显示全部楼层
不知道,专家级别是咋评的,我只是很认真地论坛里逛罢了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

77

主题

640

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部