(嵌入式常识)-rom,flash和ram的区别

简介: 我老是将MCU中常见的存储设备搞混,故记录于此

ROM(read only memery)只读存储器
ROM只能读取事先所存数据,数据存储后无法改变或删除,断电后数据不会丢失。
随着技术发展,出现了紫外线擦写,电擦写(EEPROM),和快闪存储器(Flash Memory,简称Flash)。
在单片机中用来存储程序数据及常量数据或变量数据,凡是c文件及h文件中所有代码、全局变量、局部变量、‘const’限定符定义的常量数据、startup.asm文件中的代码(类似ARM中的bootloader或者X86中的BIOS,一些低端的单片机是没有这个的)通通都存储在ROM中。

FLASH
Flash 存储器(FLASH EEPROM)又称闪存,快闪。它是EEPROM的一种。它结合了ROM和RAM的长处。不仅具备电子可擦除可编辑(EEPROM)的性能,还不会断电丢失数据同时可以快速读取数据。它于EEPROM的最大区别是,FLASH按扇区(block)操作,而EEPROM按照字节操作。FLASH的电路结构较简单,同样容量占芯片面积较小,成本自然比EEPROM低,因此适合用于做程序存储器。

RAM (Random Access Memory)随机访问存储器
存储单元的内容可按照需要随机取出或存入,且存取的速度与存储单元的位置无关。这种存储器在断电时,将丢失存储数据。

它主要用来存储程序中用到的变量(需要改变的数据)。凡是整个程序中,所用到的需要被改写的量(包括全局变量、局部变量、堆栈段等),都存储在RAM中。

相关文章
|
存储 缓存 算法
内存、ram、 rom、 norflash,nandflash详细区别
内存、ram、 rom、 norflash,nandflash详细区别
1266 0
FPGA-片内ROM FIFO RAM连用
FPGA-片内ROM FIFO RAM连用
110 0
|
内存技术
STM32F103系列单片机的FLASH和RAM大小
CPU:STM32F103RCT6,LQFP64,FLASH:64KB,RAM:20KB flash起始地址为0x8000000,大小为0x10000(16进制)—>65536字节(10进制)—>64KB RAM起始地址为0x2000000,大小为0x5000(16进制)—>20480字节(10进制)—>20KB
1685 0
STM32F103系列单片机的FLASH和RAM大小
|
IDE 开发工具 芯片
RISC-V MCU IDE MRS(MounRiver Studio)开发之: 编译后打印FLASH及RAM使用占比信息
在嵌入式开发中,我们有时需要在编译结束后查看目标芯片FLASH及RAM区使用占比情况,而大部分IDE是默认关闭该功能的,此时我们可以通过以下步骤来手动来开启
RISC-V MCU IDE MRS(MounRiver Studio)开发之: 编译后打印FLASH及RAM使用占比信息
|
4月前
|
数据库 数据安全/隐私保护
在阿里云中,访问控制(Resource Access Management,简称RAM)是权限管理系统,主要用于控制账号在阿里云中
在阿里云中,访问控制(Resource Access Management,简称RAM)是权限管理系统,主要用于控制账号在阿里云中
522 3
|
4月前
阿里云RAM角色和自定义角色
阿里云RAM角色和自定义角色
75 1
|
6月前
|
安全 API 数据安全/隐私保护
云安全中心-云平台配置检查CIEM查询到的Ram相关的检查项,能否在阿里云OpenAPI查到同样的?
云安全中心-云平台配置检查CIEM查询到的Ram相关的检查项,能否在阿里云OpenAPI查到同样的?
68 1