- 17
- 0
- 约5.23万字
- 约 212页
- 2017-12-09 发布于湖北
- 举报
【精品】编译原理PPT课件(完整)
* 示例: 设四元式程序如下: (1) read (X) (2) read (Y) (3) R:=X MOD Y (4) if R=0 goto (8) (5) X:=Y (6) Y:=R (7) goto (3) (8) write (Y) (9) halt 基本入口四元式包括: (1) 程序第一条四元式 (3) 转移语句转移到的四元式 (5) 条件语句之后的第一条四元式 (8) 转移语句转移到的四元式 由此可以得到四个基本块.(见下页) * (8) write (Y) (9) halt (1) read (X) (2) read (Y) (3) R:=X MOD Y (4) if R=0 goto (8) (5) X:=Y (6) Y:=R (7) goto (3) B1 B2 B3 B4 * 二 基本块内的优化 基本块内可以进行以下几种优化: 合并已知量, 删除多余运算(公共子表达式) 删除无用赋值 优化手段: DAG 1 DAG 的定义 DAG 是有向无环路图的简称, 结点的基本形式如右图: n i 为结点名, val 为结点值标记, op 为结点的运算. n i ni1 ni2 op val * 2 四元式的 DAG 表示 考虑下面三种类型的四元式,DAG表示如右所示 0 型: (:=, B, , A) 1 型: (op, B, , A) 2 型: (op,B,C,A) n i B,A n i n k A B op A n i ni1 ni2 B C op * 3 基本块的 DAG 构造算法及优化 令 NODE(A)= 若 DAG 中存在值标记为 A 的结点 n ,则返回 n ; 否则 返回 null. 基本块的 DAG 构造算法如下: (1) 令 DAG=null (2) for 基本块的 每一四元式 do { 若 NODE(A) 未被引用,或有多个值标记 , 则 删除 值标记 A; //(删除无用赋值) 根据四元式类型,分别转到 T0,T1,T2 处 T0 : //(:=, B, , A) 若NODE(B)= null { 生成值标记为 B 的叶结点 n} 否则 令 n= NODE(B); 把 A 添加在 n 结点的右侧; 返回 (2) * T1 : //(op, B, , A) 若 B 为已知量 // 合并已知量 { 执行 op B , 得到一新常数 p, 若NODE(p)= null { 生成值标记为 p 的叶结点 n} 否则 令 n= NODE(p); 把 A 添加在 n 结点的右侧; 返回 (2) } 否则 若 DAG 中存在型如右式的子图 {则把 A 添加在 n 结点的右侧; 返回 (2) } //合并多余运算 否则 {若NODE(B)= null { 生成值标记为 B 的叶结点 n1} 否则 令 n1= NODE(B); 建立一运算为 op ,值标记为 A 的结点 n, 从 n 连一边到 n1 ,返回(2)} n n 1 B op * T2 : //(op, B, C , A) 若 B ,C为已知量 // 合并已知量 { 执行 op B , 得到一新常数 p, 若NODE(p)= null { 生成值标记为 p 的叶结点 n} 否则 令 n= NODE(p); 把 A 添加在 n 结点的右侧; 返回 (2) } 否则 若 DAG 中存在型如右式的子图 {则把 A 添加在 n 结点的右侧; 返回 (2) } //合并多余运算 否则 {若NODE(B)= null { 生成值标记为 B 的叶结点 n1} 否则 令 n1= NODE(B); 若NODE(C)= null { 生成值标记为 C 的叶结点 n2}
您可能关注的文档
- 【大学课件】制药工艺设计习题库-----第六章 车间布置.doc
- 【大学课件】制药工艺设计习题库-----第十章 制药车间设计各论.doc
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第三章 内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第二章 内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第五章 第一节内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第五章 第三、四节内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第五章 第二节内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第五章 第五、六节内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第六章 内容.ppt
- 【大学课件】园林绿化建设工程施工组织与管理讲课稿---第四章 内容.ppt
最近下载
- 2026年高考全国II卷文科综合真题试卷(新课标卷)(+答案).docx VIP
- 安路科技(688107)补国产短板,突高端应用,拓新应用与技术大市场-240717-东北证券-38页.pdf VIP
- [搞笑小品剧本]上当了小品剧本.docx VIP
- 全国初中数学联合竞赛真题及答案(初二组)2015-年.pdf VIP
- 数据中心800V直流供电技术白皮书2.0.pdf
- 上海大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(B卷)附参考答案.pdf
- 上海大学2022-2023学年第1学期《高等数学(上)》期末考试试卷(A卷)附参考答案.pdf
- 中国教育行业人才流动与薪酬水平_2025年12月.docx
- 2024全国初中数学联赛初二卷 .pdf VIP
- AIAG-VDA-SPC手册-Yellow-Volume2026年2月第一版 中文.pdf VIP
原创力文档

文档评论(0)