注册 登录
查看: 224|回复: 1

关于RAM和ROM的疑问

[复制链接]
发表于 2014-12-15 12:19:34 | 显示全部楼层 |阅读模式
根据以往的认识得,RAM是数据存储器,ROM是程序存储器,那么在写一个程序的时候,定义并初始化了一个变量:
  1. int a = 3 ;

那么我句代码是不是全部都是存储在ROM中的,包括那个3,在单片机执行到这句的时候会在RAM中为a分配一个2byte的空间,并且把3存进去。而如果我这样定义一个变量:

  1. code int a = 3 ;
编译器是不是直接在ROM中为a分配一个空间,并且值为3,和程序的本质是一样的。
回复

使用道具 举报

发表于 2014-12-15 12:56:53 | 显示全部楼层
是 const 吧。

这边表示只读,会把数据编译到rom里。当然,你也可以修改linker文件来达到编译进RAM里的目的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回列表 返回顶部