编译原理
# 基本概念
抽象语法树
是源代码语法的结构的一种抽象表示,它用树状的方式表示编程语言的语法结构1 (opens new window)。抽象语法树中的每一个节点都表示源代码中的一个元素,每一棵子树都表示一个语法元素,
静态单赋值
静态单赋值 (opens new window)(Static Single Assignment、SSA)是中间代码的特性,如果中间代码具有静态单赋值的特性,那么每个变量就只会被赋值一次2 (opens new window)。
指令集
不同的机器有不同的指令集,包括复杂指令集合精简指令集
# 编译原理
因为这东西说起来比较复杂,我还没研究完,直接说一下大致流程
- 词法与语法分析
- 类型检查
- 中间代码生成
- 机器码生成
深入参考Go 语言编译过程概述 | Go 语言设计与实现 (draveness.me) (opens new window)
编辑 (opens new window)
上次更新: 2021/03/25, 23:10:37