第七章语义分析和中间代码产生.PPT

编译原理 考虑如下语句 : while ab do if cd then x:=y+z else x:=y-z 生成下列代码: L1: if ab goto L2 goto Lnext L2: if cd goto L3 goto L4 L3: T1:=y+z x:=T1 goto L1 L4: T2:=y-z x:=T2 goto L1 Lnext: 编译原理 一遍扫描翻译控制流语句 考虑下列产生式所定义的语句: (1) S→if E then S (2) | if E then S else S (3) | while E do S (4) | begin L end (5) | A (6) L→L;S (7) | S S表示语句, L表示语句表, A为赋值语句,E为一个布尔表达式 编译原理 if 语句的翻译 相关产生式 S → if E then S(1) | if E then S(1) else S(2) 改写后产生式 S → if E then M S1 S → if E then M1 S1 N else M2 S2 M→? N→? 编译原理 翻译模式: 1. S→if E then M S1

文档评论(0)

1亿VIP精品文档

相关文档