4.1语法制导的定义 4.1.4属性依赖图 例int id1,id2,id3的分析树(虚线)的依赖图 (实线) L→L,idL.in=L.in; addType (id.entry,L.in) in int id3 3 entry id,2 entry id entry
4.1 语法制导的定义 4.1.4 属性依赖图 • 例 int id1 , id2 , id3的分析树(虚线)的依赖图 (实线) L→ L1 , id L1 .in = L.in; D addType (id.entry, L.in) int T , id3 L L L id2 id1 , 1 entry 10 2 entry 3 entry in 9 in 7 8 4 type in 5 6
4.1语法制导的定义 4.1.4属性依赖图 例intid1,id2,id的分析树(虚线)的依赖图 (实线) L->id addType (id.entry,L.in) in int id3 3 entry id,2 entry entry
4.1 语法制导的定义 4.1.4 属性依赖图 • 例 int id1 , id2 , id3的分析树(虚线)的依赖图 (实线) L→ id D addType (id.entry, L.in) int T , id3 L L L id2 id1 , 1 entry 10 2 entry 3 entry in 9 in 7 8 4 type in 5 6
4.1语法制导的定义 4.1.5属性计算次序 1、拓扑排序:结点的一种排序,使得边只会从该次 序中先出现的结点到后出现的结点 例1,2,3,4,5,6,7,8,9,10 T type int id;3 entry id,2 entry id entry
4.1 语法制导的定义 4.1.5 属性计算次序 1、拓扑排序:结点的一种排序,使得边只会从该次 序中先出现的结点到后出现的结点 • 例 1,2,3,4,5,6,7,8,9,10 D int T , id3 L L L id2 id1 , 1 entry 10 2 entry 3 entry in 9 in 7 8 4 type in 5 6
4.1语法制导的定义 4.1.5属性计算次序 2、属性计算次序:构造输入的分析树 T 4 type in 5 int id3 3 entry id 2 entry id entry
4.1 语法制导的定义 4.1.5 属性计算次序 2、属性计算次序:构造输入的分析树 D int T , id3 L L L id2 id1 , 1 entry 10 2 entry 3 entry in 9 in 7 8 4 type in 5 6
4.1语法制导的定义 4.1.5属性计算次序 2、属性计算次序:构造输入的分析树,构造属性依 赖图 type int id;3 entry id 2 entry id entry
4.1 语法制导的定义 4.1.5 属性计算次序 2、属性计算次序:构造输入的分析树,构造属性依 赖图 D int T , id3 L L L id2 id1 , 1 entry 10 2 entry 3 entry in 9 in 7 8 4 type in 5 6