分类

编译与构建

.s启动文件详解
一、作用与背景: MCU 上电或复位后,CPU 会从固定地址开始执行。 此处存放的是 向量表(Vector Table),第一个条目是栈顶地址(SP),第二个是复位处理函数地址(PC)。 启动文件负责配置这些初始值,并引导程序进入 C 语言环境。 流程:上电 → 执行启动代码 → 设置 SP 和 P
2026-08-25
|
4
|
0
|
0
VMA和LMA
一、预备知识: 在深入代码之前,我们先对齐几个在跨模块排查时经常遇到的核心概念: LMA (Load Memory Address)(0x80000000):烧录地址。MCU 掉电后数据持久存储的位置(通常是 Flash)。 VMA (Virtual Memory Address)(0x200000
2026-08-24
|
11
|
0
|
0
编译、汇编和链接
一、编译、汇编和链接的基本概念 编译:将源代码转换为汇编语言。 汇编:将汇编语言转换为机器代码。 链接:将多个对象文件和库合并成一个单一的可执行文件。
2026-08-24
|
6
|
0
|
0
GCC内LD链接脚本语法
一、 声明式配置 DSL(领域特定语言) 不需要真正掌握,只需要会用 无逻辑:没有 if/for/函数(极少例外,如 SORT) 无状态:不保存变量,不改变程序行为 纯映射:只描述“输入段 → 输出段 → 物理地址”的映射关系 非图灵完备:不能写算法,不能做计算
2026-08-24
|
21
|
0
|
0