2、stm32f407学习笔记-存储器和寄存器以及映射

1、stm32寻址范围

32位的单片机可以有32根地址线(每根地址线有两种状态:导通或不导通)

单片机内存地址访问的存储单元是按字节编址的!(而不是bit)

地址线共有2^32中可能组合,所以采用32位寻址空间,理论最大寻址范围为4GB(2^2*2^10*2^10*2^10),物理存储器大小远小于理论寻址空间,寻址范围通过芯片设计的内存映射表确定,开发时需参考对应型号的参考手册(Reference Manual)。

2、存储器映射

存储器是计算机系统中用于保存数据和指令的硬件部件,类似于日常生活中的"仓库"。它分为不同类型,如内存(RAM)和硬盘,内存速度快但断电数据消失,硬盘速度慢但数据可长期保存。

存储区映射是指将物理存储器地址与逻辑地址关联的过程,类似于给仓库的每个货架编号。例如,程序访问某个变量时,操作系统通过映射表找到该变量在内存中的实际位置,就像快递员根据门牌号准确找到收件人。

生活中,内存如同办公桌,临时存放常用文件;硬盘如同文件柜,长期归档资料。存储区映射则像办公桌抽屉的标签,确保快速定位所需物品。

以F1为例:

存储器映射图参考数据手册中的Memory Map章节。

3、寄存器映射

寄存器的基本概念

寄存器是计算机处理器内部的高速存储单元,用于暂存指令、数据和地址。其访问速度远高于内存,是CPU直接操作的核心部件之一。

寄存器的主要功能

  • 暂存数据:在运算过程中临时保存操作数或中间结果。
  • 加速访问:减少CPU与内存之间的数据交换,提升执行效率。
  • 控制流程:存储程序计数器(PC)等关键信息,指导指令执行顺序。

寄存器的常见类型

  • 通用寄存器:支持算术逻辑运算,如x86架构的EAX、EBX。
  • 专用寄存器:包括程序计数器(PC)、栈指针(SP)等,用于特定功能。
  • 状态寄存器:存储标志位(如零标志ZF),反映运算结果状态。
相关推荐
YM52e21 分钟前
鸿蒙PC ArkTS 声明合并问题深度解析与最佳实践
学习·华为·harmonyos·鸿蒙·鸿蒙系统
海兰1 小时前
【实用程序】电商销售分析仪表盘 — 从零搭建一个AI参与的全栈数据洞察系统
人工智能·学习·算法
iCxhust1 小时前
C#进程管理程序
开发语言·汇编·stm32·单片机·c#·微机原理
ken22322 小时前
在 Libreoffice Calc中输入自定义表情字符时,需要保存之后,才能正常显示
学习
zwenqiyu2 小时前
P5283 [十二省联考 2019] 异或粽子题解
c++·学习·算法
编程圈子2 小时前
电机驱动开发学习2. 直流无刷电机工作原理
驱动开发·学习
MartinYeung52 小时前
[论文学习]大型语言模型(LLM)安全与隐私-基于善、恶、丑的深度分析
学习·安全·语言模型
什仙2 小时前
Mathcad Prime 的教程资料
学习·工具
hhcgchpspk3 小时前
汇编语言传递数据和地址的误区
汇编·笔记·nasm·masm
智者知已应修善业3 小时前
【51单片机2个外部中断显示中断历时,初始化8左移3位共阳数码管】2024-6-6
c++·经验分享·笔记·算法·51单片机