zzsczz 发表于 2014-11-27 00:09:15

标准51芯片的stack超过物理限制后会如何?

atmel的51硬件手册上说stack向内存高位生长
超过物理限制后push的数据lost,
pop的数据是indeterminate

向下pop到低0以后是咋样子的?

有什么规范么?

或者intel允许多种实现?

ibichao 发表于 2014-11-27 01:05:40

Keil中仿真了一下,堆栈溢出,SP会回滚,也就是SP=0时POP操作SP变成0xff;SP = 0xff时push操作sp变成0。楼主你遇到问题自己要先想办法解决。

TrulyZhu 发表于 2014-11-27 08:43:09

谢谢楼上的实验,原来无数据后pop会循环到顶部。

zzsczz 发表于 2014-11-27 08:51:21

ibichao 发表于 2014-11-27 01:05
Keil中仿真了一下,堆栈溢出,SP会回滚,也就是SP=0时POP操作SP变成0xff;SP = 0xff时push操作sp变成0。楼 ...

已有的经验不是可以更快地学习么

有很多问题要解决

况且 软件仿真 和硬件的实现 有没有区别是 不清楚的




下方一堆警告;cpuat89s51,不是 52
页: [1]
查看完整版本: 标准51芯片的stack超过物理限制后会如何?