- 9
- 0
- 约1.15万字
- 约 37页
- 2017-02-02 发布于湖北
- 举报
上次课程内容回顾 4.5 简单算术表达式与赋值句 4.5.1 简单算术表达式的语法制导翻译 4.5.2 变量的(内部)类型转换 4.5.2 变量的(内部)类型转换(续1) 4.5.2 变量的(内部)类型转换(续2) 4.5.2 变量的(内部)类型转换(续3) 4.6 数组元素的引用 确定映射方式的两种方法 4.6.1 数组元素的地址计算 一维数组元素的地址计算: n维数组元素的地址计算 n维数组元素的地址计算(续1) 4.6.2 数组元素引用的语法制导翻译 4.6.2 (续) 2 属性和函数 3语义规则 3语义规则(续1) 结束(2010年5月11日) 上次课程内容回顾 4 分析举例 数组元素引用的语法制导翻译 4 分析举例(续1) 4.7 布尔表达式4.7.1 布尔表达式的作用与结构 布尔运算的优先级与结合性 4.7.2 布尔表达式的计算方法 1 数值表示的直接计算 2 逻辑表示的短路计算 3 短路计算的必要性 4.7.3 数值表示与直接计算的语法制导翻译 4.7.3 数值表示与直接计算的语法制导翻译(续1) 4.7.3 数值表示与直接计算的语法制导翻译(续2) 4.7.4 短路计算的语法制导定义 4.7.4 短路计算的语法制导定义(续1) 4.7.4 短路计算的语法制导定义(续2) 4.7.4 短路计算的语法制导定义(续3) 4.7.4 短路计算的语法制导定义(续4) 结束(2010年5月13日) 属性 .true:表达式的真出口,它指向表达式为真时的转向; 属性 .false:表达式的假出口,它指向表达式为假时的转向; 函数 newlable:与newtemp相似,但它产生的是一个标号而不是一个临时变量。 三地址码序列与.true、.false的关系: 考虑布尔表达式E→E1 or E2,它应该有下述代码序列: E1.code E1.false: E2.code 根据布尔表达式短路计算的逻辑(4.7),上述表达式真、假出口之间存在下述关系: E1.true = E2.true = E.true 和 E2.false = E.false 即首先生成计算表达式E1的中间代码,然后在计算表达式E2的中间代码之前设置一个标号E1.false,使得当表达式E1为假时,转而计算表达式E2。 (1)E→E1 or E2 { E1.true:= E.true; E1.false:=newlabel; E2.true:= E.true; E2.false:=E.false; E.code := E1.code||emit(E1.false :)||E2.code;} (2) |E1 and E2 { E1.false:= E.false; E1.true:=newlabel; E2.false:= E.false; E2.true:=E.true; E.code := E1.code||emit(E1.true:)||E2.code;} (3) |not E1 { E1.false:=E.true; E1.true:=E.false;} (4) |(E1) { E1.false:=E.false; E1.true:=E.true;} 下下页 语义规则: |id1 relop id2 { E.code := emit (ifid1.place relop.op id2.placegotoE.true) || emit(goto E.false); } (6) |id { E.code := emit(if id.place goto E.true) || emit(goto E.false);} (7) |true { E.code := emit(goto E.true);} (8) |false { E.code := emit(goto E.false);} 上一页 例4.20:再考虑布尔表达式ab or cd and ef的短路计算: if ab goto LT goto L2 L2: if cd goto L1 goto LF L1: if ef goto LT goto LF drive me crazy!! 分析树: 注释分析树: 三地址码序列: 上一页 * 参数传递(续) 引用调用、复写-恢复、名字调用 嵌套定义的过程中信息的存储 作用域信息的保存 过程的作用域(过程与程序块的区别) 过程嵌套的层次 符号表的组织
您可能关注的文档
最近下载
- 提高市政雨水管道接口施工一次验收合格率.docx VIP
- 食品企业管理体系建立与认证吴亨覃海元61课件.pptx
- 新智能制造产业领域的智能仓储与物流解决方案.pptx VIP
- 电子科技大学860软件工程学科基础综合2020年考研专业课初试大纲.pdf VIP
- 2026人教版小学英语四年级上册期末综合试卷(3套含答案解析 打印版).docx
- 复杂底座的三维造型及数控加工工艺设计.docx VIP
- 2024北京昌平一中高三11月月考英语试题及答案.pdf VIP
- “建筑制图基础实训作业”及“建筑制图与识图实训小作业1-4部分参考答案”.pdf VIP
- 《食品企业管理体系建立与认证》课程标准.docx VIP
- 2025年房地产经纪人养老地产风险管理与应急预案专题试卷及解析.pdf VIP
原创力文档

文档评论(0)