最近在2440开发板上调试一个裸机程序,在LCD显示部分,要显示一张图片,因此将图片编码定义成const 数组,定义在一个文件,总大小100多k,编译的时候发现const 变量实际上是编译到了RO区域,如图 因此有一个问题,bin文件烧录到flash 中,当arm 开始运行的时候,会将CODE 和RO 以及RW的内容都load 到ram 中,那这样那个const 数组不是要占用很大的ram空间吗?如果这样的话,图片多几张不是ram就不够用了??? 在51中,我们有用code 关键字,将这样的数据定义到rom 区间,为了节省ram空间,那我想问是如何节省的?51中就不会load到ram中执行吗? arm中要怎样达到节省ram空间的目的呢? |