Skip to content
EM Notebook
Search
Main Navigation
Home
About
Elecmonkey的小花园
Edev.uno
Appearance
Menu
Return to top
目录
实验:控制流分析 (Control Flow Analysis)
本实验演示如何从
三地址码 (TAC)
构建
控制流图 (CFG)
,并识别循环结构。
核心步骤:
识别 Leaders
:找出基本块的入口指令。
划分基本块
:将 Leaders 之间的指令打包。
构建流图
:连接基本块,形成有向图。
回边与循环
:识别回边(Back Edge)和自然循环。
1. 输入三地址码 (TAC)
(1) i = 1 (2) j = 1 (3) t1 = 10 * i (4) if j > t1 goto 11 (5) t2 = j - 1 (6) t3 = 4 * t2 (7) t4 = a[t3] (8) if t4 > j goto 10 (9) j = t4 (10) goto 4 (11) i = i + 1 (12) goto 3
识别 Leaders
划分基本块
生成流图
2. 可视化分析