程序占用RAM空间大小

[复制链接]
3305|4
 楼主| st316 发表于 2012-9-26 11:06 | 显示全部楼层 |阅读模式
下面是一个工程编译后的信息:  26 118 bytes of readonly  code memory
   2 480 bytes of readonly  data memory
  10 309 bytes of readwrite data memory


我用的目标芯片是103C8,10K的RAM,10309 bytes>10K。我将程序下载到芯片,测试了一会,没出现异常。

是不是能这样解释:10309bytes并不表示每时每刻都需要这么多RAM空间,这个数字只代表整个程序中全部readwrite data的总和。
figo20042005 发表于 2012-9-26 11:16 | 显示全部楼层
转到RAM里应该没那么大
 楼主| st316 发表于 2012-9-26 11:21 | 显示全部楼层
2# figo20042005 为什么?
airwill 发表于 2012-9-28 23:04 | 显示全部楼层
10309bytes并不表示每时每刻都需要这么多RAM空间,这个数字只代表整个程序中全部readwrite data的总和。
这个说法是没有错, 但是, 关键是编译器把堆栈放在了 RAM 的最后, 由于超出 RAM 空间, 堆栈就分配到了无效区域, 这样程序执行肯定出问题.
测试了一会,没出现异常。或许你的芯片103C8 里还有更大的 RAM. 据说, 很多芯片是上档的芯片经降额(可能是高等级芯片某些测试不合格而降等级用)出来的. 然后打了低档芯片的字而已
 楼主| st316 发表于 2012-10-10 16:59 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

167

帖子

3

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