编译原理课件语法制导翻译__SDD_例__表达式__综合属性_继承属性

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

T .val
依赖图 .inh T’.syn
F .val
digit .lexval *
F .val digit .lexval
inh T1’.syn ε
Production Semantic Rules T → FT’ T’.inh = F.val T.val = T’.syn T’→ *FT1’ T1’.inh = T’.inh * F.val T’.syn = T1’.syn
Production T → FT’ T’→ *FT1’ T’→ ε F → digit Semantic Rules T’.inh = F.val T.val = T’.syn T1’.inh = T’.inh * F.val T’.syn = T1’.syn T’.syn = T’.inh F.val = digit.lexval
T F T’
补充练习: 构造 3*5*7 的带 注释的语法树
digit
*
F
digit *
T’
F T’
digit
Production T → FT’ T’→ *FT1’ T’→ ε F → digit Semantic Rules T’.inh = F.val T.val = T’.syn T1’.inh = T’.inh * F.val T’.syn = T1’.syn T’.syn = T’.inh F.val = digit.lexval
6
7
Production Semantic Rules T → FT’ T’.inh = F.val T.val = T’.syn T’→ *FT1’ T1’.inh = T’.inh * F.val T’.syn = T1’.syn
digit*digit 的依赖图
T’→ ε F → digit
T’.syn = T’.inh F.val = digit.lexval
digit*digit 的依赖图
T’→ ε F → digit
T’.syn = T’.inh F.val = digit.lexval
T .val 9 F .val 3
5Leabharlann 拓扑排序.inh T’.syn 8
4 F .val 2 digit .lexval
digit .lexval 1
inh T1’.syn
T .val = 15
F .val = 3 digit .val = 3 *
3*5 的带注释的语法树 .inh = 3 T’ .syn = 15 F .val = 5
.inh = 15 T1’ .syn = 15
digit .val = 5 ε
Production Semantic Rules T → FT’ T’.inh = F.val T.val = T’.syn T’→ *FT1’ T1’.inh = T’.inh * F.val T’.syn = T1’.syn T’→ ε F → digit T’.syn = T’.inh F.val = digit.lexval
ε
问题: 该SDD描述的 表达式计算遵循左 结合还是右结合?
表达式文法
G: T → FT’ T’→ *FT1’ T’→ ε F → digit
G: G': E → E+T | T E → TE' T → T*F | F E'→ +TE'|ε F → (E) | i T → FT' T'→ *FT'|ε F → (E) | i
包含综合属性和继承属性的表达式SDD
相关文档
最新文档