- 1
- 0
- 约3.09千字
- 约 50页
- 2026-05-13 发布于北京
- 举报
语法制导翻译和中间代码生成;优选语法制导翻译和中间代码生成;四元式表示很类似于三地址指令,很容易转换成机器代码。
布尔表达式的计算方法:
MODE:=intEND
产生式E→E(1)opE(2)的语义动作中,关于E.
GEN(opr,U,E2.
为布尔表达式E引入两个新的属性:
false的四元式拉成一条“假”链。
但这些是下一阶段代码优化要讨论的问题,暂不讨论。
表达式中可能出现不同类型的变量和常量
E→EorE|EandE|notE|(E)|idropid|id
PLACE:=NEWTEMP;
(3)(+,t1,t2,t3)
对于E为aropb形式,生成代码如下:
ABCD-*+ECD-N^/+
|whileEdoS while语句;语义分析基础;语义分析基础-语义分析的内容(续);语义分析基础;6.1属性文法(AttributeGrammar);6.1属性文法(续);6.1属性文法(续);6.1属性文法(续);6.1属性文法(续);6.1属性文法(续);6.2语法制导翻译概论;例简单算术表达式求值的属性文法
E→E1+T {E.val:=E1.val+T.val}
E→T {E.val:=T.val}
T→T1*digit{T.val:=T1.val*
原创力文档

文档评论(0)