打印

关于keil的使用

[复制链接]
1186|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我在使用keil中有个地方没有太理解~
大家指点一下~

里面中的
code
RO-data
RW-data
ZI-data
分别是什么意思?
沙发
yixin1937|  楼主 | 2012-4-12 18:12 | 只看该作者
补充一下~我用的是stm32f101c8t6

里面的128B  flash  和  16KB  SRAM与其中的关系

使用特权

评论回复
板凳
李富贵| | 2012-4-12 22:02 | 只看该作者
本帖最后由 李富贵 于 2012-4-12 23:49 编辑

flash=code+ro+rw
ram=rw+zi

举例来说
int i;
i在这里就是zi
int i=5;
i在这里就是rw
const int i=5;
i在这里就是ro

ro是常数,运行时不会被改变,所以只占用flash;rw是初始化变量,既要占用flash(i=5这个5必须先存在flash里面,然后搬到ram里面运算)也要占用ram;而zi是未初始化变量,不占用flash,只在运行中占用ram。

使用特权

评论回复
地板
王紫豪| | 2012-4-12 22:22 | 只看该作者
很对

使用特权

评论回复
5
yixin1937|  楼主 | 2012-4-13 14:25 | 只看该作者
3# 李富贵
解释的很明白,十分感谢~但是事实上,有些东西有点乱~
在我编译的过程中~我当我定义了int i= 5的时候~随着变量i定义的越多~那么zi-data应该越少才对~
但是我发现多了~当我定义了一个数组
a【100】的时候~zi-data的数据要比 a【200】的时候少~~所以很疑惑不解~
并且其中的data是什么?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:用我的一生!来追求人生的高峰!

24

主题

185

帖子

0

粉丝