VIP20
本课程属于:010-工程编译 编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

工程编译 · 从零基础到实战

📚 共计 30 章节
01
编译原理概述
编译器、解释器区别 · 编译五阶段 · 应用场景
基础概念
02
词法分析基础
Token · 正则表达式 · DFA/NFA 概念
词法自动机
03
手工实现词法分析器
Python 实现 · 识别关键字/标识符/数字/运算符
Python实战
04
正则表达式到NFA
Thompson构造法 · 步骤与示例
NFA构造
05
NFA到DFA
子集构造法 · 消除空转移 · Hopcroft最小化
DFA优化
06
Lex/Flex工具入门
安装 · 定义段/规则段/用户代码段 · 生成词法分析器
LexFlex
07
语法分析基础
CFG · 推导与归约 · 最左/最右推导 · 语法树
文法推导
08
自顶向下语法分析
递归下降 · LL(1) · FIRST/FOLLOW · 预测分析表
LL(1)递归
09
自底向上语法分析
LR(0) · SLR(1) · LR(1) · LALR(1)
LRLALR
10
Yacc/Bison工具入门
安装 · 结合Lex/Flex实现计算器
YaccBison
11
语义分析基础
属性文法 · 综合/继承属性 · 语法制导翻译 · AST
语义AST
12
符号表管理
哈希表 · 作用域 · 嵌套/全局
符号表作用域
13
类型检查
静态/动态 · 结构等价/名等价 · 隐式/显式转换
类型检查
14
中间代码生成
三地址码 · 四元式 · 控制流翻译 (if/while/for)
IR三地址码
15
中间代码优化
常量折叠 · 死代码消除 · 循环优化 · 不变式外提
优化循环
16
目标代码生成
指令选择 · 寄存器分配(图着色) · 指令调度 · 流图
代码生成寄存器
17
运行时环境
存储组织 · 活动记录 · 调用约定 (cdecl/stdcall)
运行时AR
18
垃圾回收机制
引用计数 · 标记-清除 · 复制 · 分代 · Python GC
GC内存
19
编译前端实战(一)
MiniLang 语法规范与词法规范设计
MiniLang设计
20
编译前端实战(二)
Lex/Flex 实现 MiniLang 词法分析器
Lex词法
21
编译前端实战(三)
Yacc/Bison 实现 MiniLang 语法分析器
Yacc语法
22
编译前端实战(四)
构建 MiniLang 抽象语法树 (AST)
AST实战
23
编译前端实战(五)
语义分析 · 符号表管理
语义符号表
24
编译后端实战(一)
MiniLang 中间代码生成 (三地址码)
IR三地址码
25
编译后端实战(二)
常量折叠 · 死代码消除
优化MiniLang
26
编译后端实战(三)
生成 x86 汇编代码
x86汇编
27
现代编译器架构
GCC 架构 · LLVM 架构 (Clang/IR/Pass/后端)
GCCLLVM
28
LLVM入门
安装 · LLVM IR 语法 · C++ API 生成IR
LLVMIR
29
LLVM Pass开发
FunctionPass · 统计基本块 · opt工具
Passopt
30
编译技术前沿
JIT · AOT · WebAssembly · AI辅助优化
前沿JIT