当前位置: 首页 > news >正文

嵌入式-不同数据的存储区域 5.22

理解“数据存储区域”的核心在于搞懂嵌入式系统的内存映射和C语言变量的段分配规则。.rodata,.data,.bss等正是链接器划分的段section它们决定了变量/数据物理上放在 Flash 还是 RAM。1. 存储器模型与各段的位置高地址 ┌────────────┐ │ 栈 (Stack) │ ← 局部变量、函数调用帧向下增长 │ ↓ │ │ ↑ │ │ 堆 (Heap) │ ← malloc / free 分配向上增长 ├────────────┤ ← 堆栈都在 RAM │ .bss │ ← 未初始化 / 初始化为0的全局/静态变量 (RAM) ├────────────┤ │ .data │ ← 已初始化且初值非0的全局/静态变量 (RAM) ├────────────┤ │ │ Flash│ │ (ROM)├────────────┤ │ .rodata │ ← const 全局/静态变量、字符串字面量 (Flash) ├────────────┤ │ .text │ ← 程序代码 (Flash) 低地址 └────────────┘Flash / ROM里的段.text、.rodata、以及.data的初始值拷贝RAM里的段.data运行时的变量本体、.bss、堆、栈⚠️.data的初始值烧录在 Flash 中启动代码会把它们复制到 RAM 中对应的.data区域。所以全局变量int a 5;的5在 Flash变量a本身在 RAM。2. 每个段的具体解释
http://www.zskr.cn/news/1360878.html

相关文章:

  • Python学习教程(六)数据结构List(列表)
  • 戴森球计划终极蓝图仓库:5步快速构建完美自动化工厂的完整指南
  • Windows平台APK安装器:轻松在电脑上安装安卓应用
  • 为什么你的财务月报总是做不完?如何用对方法让财务月报自动生成?
  • vue3 大屏列表轮播,使用transition-group
  • 昇腾CANN ops-transformer MoE:专家混合路由的 NPU 融合优化实战
  • 136、运动控制中的同步机制:时间戳与触发
  • 如何用代码缺陷率评估代码质量与团队产出效率——从单一指标到量化管理体系的升级路径
  • 137、运动控制中的故障诊断与安全机制
  • 【限时公开】我们压测了23个开源AI Agent框架,仅2个支持亚秒级SQL生成+自动schema纠错(测试报告PDF已备)
  • 昇腾CANN manifest:仓库清单与版本管理实战
  • 苏州二手注塑机哪家好?本地优质厂家与选购要点推荐 - GrowthUME
  • 正则表达式不再头疼:用 AI 生成并验证复杂的字符串匹配规则
  • 测试数据造假神器:利用 LLM 批量生成符合业务逻辑的连贯 Mock 数据
  • 【Claude+IDE深度协同】:VS Code与JetBrains插件配置终极手册(含私有模型微调接口)
  • 【信息系统项目管理师论文押题】论信息系统项目的不确定性绩效域
  • 【光学】偏振光线追迹Matlab仿真
  • 用weelinking大模型聚合平台深度测评Codex VS Claude Code:谁才是真正的AI编程之王?
  • 2026专业GEO优化服务商TOP推荐(11大全覆盖) - GrowthUME
  • CBCX:平台稳定性与用户体验的全面观察
  • 企业级RAG落地需要考虑的七个优化指标
  • 从零打造 AI 小说创作平台(四):项目与章节管理
  • UE5官方文档(第一人称射击游戏教程)解读 第七章
  • agent-skills 完整使用教程(2026最新版)
  • TCP可靠传输机制——“不丢包“背后的技术秘密
  • MLX框架深度优化指南:解锁苹果芯片的机器学习潜能
  • 03华夏之光永存:28nm工艺发展趋势|成熟制程长期黄金期+国产自主超车主线
  • 合肥租厂房该找谁 - GrowthUME
  • 学术写作效率飞跃!2026一站式AI论文写作工具精选指南
  • 谁是性价比之王?8款AI论文写作软件榜单,毕业护航!