news 2026/6/11 18:43:38

存储器和寄存器的区别以及存储器映像-新手小白必看

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
存储器和寄存器的区别以及存储器映像-新手小白必看

一、寄存器 ≠ 存储器

- 本质区别

- 存储器(Memory):是一片连续的存储区域,主要用来存程序代码、变量、数据等,比如我们常说的 Flash 和 SRAM。它的地址是连续的,就像一个大仓库,按地址来存取。

- 寄存器(Register):是外设(比如 GPIO、ADC、DMA)里的专用硬件单元,用来控制外设的工作模式、状态和数据传输。每个寄存器都有一个独立的地址,但这些地址是离散分布在“外设地址空间”里的,不属于存储器地址范围。

- 形象比喻

你可以把整个 STM32 的地址空间想象成一个大商场:

- 存储器(Flash/SRAM):是商场里的大超市,货架是连续编号的,你按编号就能找到商品(数据/代码)。

- 寄存器:是商场里各个店铺的收银台、开关、监控器,每个设备都有自己的位置(地址),用来控制店铺的运行,它们不连续,也不属于超市货架。

二、存储器映像到底是什么?

STM32 把所有能被 CPU 访问的硬件资源(Flash、SRAM、寄存器等)都映射到了一个统一的 32 位地址空间里,这就是“存储器映像”。


简单来说,就是给每个硬件单元(不管是存储器还是寄存器)都分配了一个唯一的地址,CPU 只要通过这个地址就能读写它,不用区分它是内存还是外设。

(图源:b站江协科技stm32入门教程)

比如:

- 0x08000000 开始的地址是 Flash 存储器(存程序)

- 0x20000000 开始的地址是 SRAM(存变量)

- 0x40000000 开始的地址是 外设寄存器(比如 GPIO、ADC 的控制寄存器)


三、为什么要这么设计?

这样设计的好处是,CPU 可以用统一的指令来访问所有资源,不用为不同硬件设计不同的指令。比如:

- 读内存数据和读 GPIO 寄存器里的状态,用的是同一条 LDR 指令;

- 写变量到 SRAM 和配置 DMA 寄存器,用的是同一条 STR 指令。


ps:LDR(Load Register)和 STR(Store Register)是ARM 汇编里最核心的数据传输指令,负责在寄存器和内存(或存储器映射的寄存器)之间搬运数据。

LDR:把内存/寄存器地址里的数据加载到 CPU 寄存器中(读操作)。

STR:把CPU 寄存器里的数据存储到内存/寄存器地址中(写操作)。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/8 8:51:18

2009-2024年各省历年卫生健康统计数据

资源介绍 各省包含年份有所不同。 2024年末,全国医疗卫生机构总数1093551个,比上年增加22766个,其中医院38710个,比上年增加355个。2024年末,卫生技术人员1302.0万人,比上年增加53.1万人(增长4…

作者头像 李华
网站建设 2026/6/11 5:49:40

零基础玩转QAnything PDF解析:从安装到实战

零基础玩转QAnything PDF解析:从安装到实战 你是不是也遇到过这些情况: 手头有一份几十页的PDF技术文档,想快速提取关键内容却只能一页页手动复制? 扫描版PDF里的表格和图片文字看不清,复制出来全是乱码? …

作者头像 李华
网站建设 2026/5/30 11:10:01

vue+uniapp+python校园头条新闻小程序--带爬虫

文章目录 技术栈说明爬虫模块实现前端实现(UniAppVue)后端API设计(Python示例)部署与上线注意事项 系统设计与实现的思路主要技术与实现手段源码lw获取/同行可拿货,招校园代理 :文章底部获取博主联系方式! …

作者头像 李华
网站建设 2026/6/6 22:36:23

MedGemma X-Ray企业级应用:集成至PACS前置分析模块的技术可行性验证

MedGemma X-Ray企业级应用:集成至PACS前置分析模块的技术可行性验证 1. 引言:当AI阅片助手走进临床工作流 你有没有想过,一张刚拍完的胸部X光片,在进入放射科医生视野前,就能自动完成初步结构识别、关键异常标记和结…

作者头像 李华
网站建设 2026/6/10 21:46:27

Clawdbot+Qwen3-32B实战指南:Web聊天平台日志记录、审计与导出功能

ClawdbotQwen3-32B实战指南:Web聊天平台日志记录、审计与导出功能 1. 为什么需要日志记录与审计能力 你有没有遇到过这样的情况:用户反馈“刚才机器人回答错了”,但你打开后台却找不到那条对话;或者团队想复盘某次客服响应质量&…

作者头像 李华