《编译原理》课程教学资源(PPT课件讲稿)第四章 语法制导的翻译

第四章语法制导的翻译 本章内容 1、介绍语义描述的一种形式方法:语法制导的翻 译,它包括两种具体形式 语法制导的定义 翻译方案 2、介绍语法制导翻译的实现方法
第四章 语法制导的翻译 • 本章内容 1、介绍语义描述的一种形式方法:语法制导的翻 译,它包括两种具体形式 –语法制导的定义 –翻译方案 2、介绍语法制导翻译的实现方法

41语法制导的定义 例简单计算器的语法制导定义 生式 语义规则 L→En print(E.val) E→>E1+T E.val=e, valt val E→T E。waL=Twl T→T1*F Tval= Ti.val *k fval T→F Tval= fval F→>(E) Eval= e.val F→ digit Fval digit. lexval
4.1 语法制导的定义 • 例 简单计算器的语法制导定义 产 生 式 语 义 规 则 L → E n print (E.val) E → E1 + T E.val = E1 .val + T.val E → T E.val = T.val T → T1 F T.val = T1 .val F.val T → F T.val = F.val F→ (E) F.val = E.val F → digit F.val = digit.lexval

41语法制导的定义 411语法制导定义的形式 基础文法 每个文法符号有一组属性 每个文法产生式A→)有 组形式为b=(c1,c2…,ck)的语义规则,其中 b和c1,c2,…,Ck是该产生式文法符号的属性, ∫是函数 综合属性:如果b是A的属性,c1,c2,…, 是产生式右部文法符号的属性或4的其它属性 继承属性:如果b是右部某文法符号X的属性
4.1 语法制导的定义 4.1.1 语法制导定义的形式 • 基础文法 • 每个文法符号有一组属性 • 每个文法产生式A → 有 一组形式为b=f(c1 , c2 , …, ck )的语义规则,其中 b和c1 , c2 , …, ck 是该产生式文法符号的属性, f 是函数 • 综合属性:如果b是A的属性,c1 , c2 , …, ck 是产生式右部文法符号的属性或A的其它属性 • 继承属性:如果b是右部某文法符号X的属性

41语法制导的定义 4.12综合属性 S属性定义:仅使用综合属性的语法制导定义 产生式 语义规则 L→En print(E.val) E→E1+T E.val= e. valt val E→T E. val= Tval T→们*F Tval= T.val x fval T→F Tval= Fval F→>(E) Eval= e val F→ digit Fval digit. lexval
4.1 语法制导的定义 4.1.2 综合属性 S属性定义:仅使用综合属性的语法制导定义 产 生 式 语 义 规 则 L → E n print (E.val) E → E1 + T E.val = E1 .val + T.val E → T E.val = T.val T → T1 F T.val = T1 .val F.val T → F T.val = F.val F→ (E) F.val = E.val F → digit F.val = digit.lexval

41语法制导的定义 注释分析树:结点的属性值都标注出来的分析树 8+5*2n的注释分析树 E.val= 18 n E.val= 8 Tval= 10 Tval= 8 Tval= 5 Fval= 2 F.val= 8 F.val= 5 digit. lexval= 2 digit.lexval=8 digit. lexval= 5
4.1 语法制导的定义 注释分析树:结点的属性值都标注出来的分析树 8+5*2 n的注释分析树 digit.lexval = 2 L E.val = 18 n E.val = 8 T.val = 10 T.val = 8 F.val = 8 digit.lexval = 8 T.val = 5 + F.val = 5 F.val = 2 digit.lexval = 5

41语法制导的定义 分析树各结点属性的计算可以自下而上地完成 E.val= 18 n E.val= 8 Tval= 10 Tval= 8 Tval= 5 Fval= 2 F.val= 8 F.val= 5 digit. lexval= 2 digit.lexval=8 digit. lexval= 5
4.1 语法制导的定义 分析树各结点属性的计算可以自下而上地完成 digit.lexval = 2 L E.val = 18 n E.val = 8 T.val = 10 T.val = 8 F.val = 8 digit.lexval = 8 T.val = 5 + F.val = 5 F.val = 2 digit.lexval = 5

41语法制导的定义 分析树各结点属性的计算可以自下而上地完成 E.val= 18 n E.val= 8 Tval= 10 Tval= 8 Tval= 5 Fval= 2 F.val= 8 F.val= 5 digit. lexval= 2 digit. lexval=8 digit. lexval= 5
4.1 语法制导的定义 分析树各结点属性的计算可以自下而上地完成 digit.lexval = 2 L E.val = 18 n E.val = 8 T.val = 10 T.val = 8 F.val = 8 digit.lexval = 8 T.val = 5 + F.val = 5 F.val = 2 digit.lexval = 5

41语法制导的定义 分析树各结点属性的计算可以自下而上地完成 E.val= 18 n E.val= 8 Tval= 10 Tval= 8 Tval= 5 Fval= 2 F.val= 8 F.val= 5 digit. lexval= 2 digit. lexval=8 digit. lexval= 5
4.1 语法制导的定义 分析树各结点属性的计算可以自下而上地完成 digit.lexval = 2 L E.val = 18 n E.val = 8 T.val = 10 T.val = 8 F.val = 8 digit.lexval = 8 T.val = 5 + F.val = 5 F.val = 2 digit.lexval = 5

41语法制导的定义 分析树各结点属性的计算可以自下而上地完成 E.val= 18 n E.val= 8 Tval= 10 T.val= 8 Tval= 5 Fval= 2 F.val= 8 F.val= 5 digit. lexval= 2 digit. lexval=8 digit. lexval= 5
4.1 语法制导的定义 分析树各结点属性的计算可以自下而上地完成 digit.lexval = 2 L E.val = 18 n E.val = 8 T.val = 10 T.val = 8 F.val = 8 digit.lexval = 8 T.val = 5 + F.val = 5 F.val = 2 digit.lexval = 5

41语法制导的定义 分析树各结点属性的计算可以自下而上地完成 E.val= 18 n E.val= 8 Tval= 10 T.val= 8 Tval= 5 Fval= 2 F.val= 8 F.val= 5 digit. lexval= 2 digit. lexval=8 digit. lexval= 5
4.1 语法制导的定义 分析树各结点属性的计算可以自下而上地完成 digit.lexval = 2 L E.val = 18 n E.val = 8 T.val = 10 T.val = 8 F.val = 8 digit.lexval = 8 T.val = 5 + F.val = 5 F.val = 2 digit.lexval = 5
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)顺序同一性的存储器模型.pptx
- 马尔可夫链蒙特卡洛算法(PPT讲稿)Hamiltonian Monte Carlo on Manifolds,HMC.pptx
- SOFT COMPUTING Evolutionary Computing(PPT讲稿).ppt
- 《计算机情报检索原理》课程教学资源(PPT课件)第五章 自动标引.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)Chapter 04 网络层 Network Layer.ppt
- 湖南科技大学:分布式工作流系统的时间管理模型研究(PPT讲稿,周春姐).ppt
- 《编译原理》课程教学资源(PPT课件讲稿)第九章 独立于机器的优化.ppt
- 西安电子科技大学:《现代密码学》课程教学资源(PPT课件讲稿)第七章 数字签名和密码协议.ppt
- 南京大学:移动Agent系统支撑(PPT讲稿)Mobile Agent Communication——Software Agent.pptx
- 中国科学技术大学:《计算机体系结构》课程教学资源(PPT课件讲稿)第五章 存储层次.ppt
- 合肥工业大学:《网络安全概论》课程教学资源(PPT课件讲稿)第一讲 网络安全概述.ppt
- 南京大学:《编译原理》课程教学资源(PPT课件讲稿)第六章 中间代码生成.ppt
- 《编译原理与技术》课程教学资源(PPT课件讲义)中间代码生成.ppt
- 《软件测试 Software Testing》教学资源(PPT讲稿)Part 3 Applying Your Testing Skills.ppt
- 电子工业出版社:《计算机网络》课程教学资源(PPT课件讲稿)第1章 概述.pptx
- 《计算机算法设计与分析》课程教学资源(PPT课件讲稿)分支界限法.ppt
- 中国科学技术大学:《数据结构及其算法》课程电子教案(PPT课件讲稿)第7章 图(主讲:刘东).pptx
- 兰州大学:搜索引擎的使用(PPT讲稿,主讲 杨青).ppt
- Folksonomies and Social Tagging(PPT讲稿).ppt
- Enabling SOA Using Messaging(PPT讲稿).ppt
- 《ASP动态网页设计实用教程》教学资源(PPT课件讲稿)第3章 Web页面制作基础.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)第四章 网络层.pptx
- 南京大学:《编译原理》课程教学资源(PPT课件讲稿)第四章 语法分析.ppt
- 南京大学:《形式语言与自动机 Formal Languages and Automata》课程教学资源(PPT课件讲稿)Transition System(主讲:卜磊).pptx
- 安徽理工大学:《算法导论》课程教学资源(PPT课件讲稿)第4章 分治法——“分”而治之.ppt
- 南京大学:《数据结构 Data Structures》课程教学资源(PPT课件讲稿)Chapter 1 基本概念和算法分析.ppt
- 《计算机网络》课程PPT教学课件(英文版)Chapter 4 物理层 PHYSICAL LAYER.pptx
- 清华大学:图神经网络及其应用(PPT讲稿)Graph Neural Networks and Applications.pptx
- 《计算模型与算法技术》课程教学资源(PPT讲稿)Chapter 8 Dynamic Programming.ppt
- Network and System Security Risk Assessment(PPT讲稿)Firewall.ppt
- 东北大学:《可信计算基础》课程教学资源(PPT课件讲稿)第三讲 认证技术与数字签名.ppt
- 《计算机网络》课程教学资源(PPT课件讲稿)Chapter 04 网络层 Network Layer.ppt
- 《时间序列分析及应用》课程教学资源(PPT课件讲稿)第二章 时间序列的预处理.ppt
- 中国科学技术大学:《算法基础》课程教学资源(PPT课件讲稿)算法基础习题课(二).pptx
- 中国科学技术大学:《计算机编程入门》课程PPT教学课件(讲稿)An Introduction to Computer Programming.ppt
- 上海交通大学:《挖掘海量数据集 Mining Massive Datasets》课程教学资源(PPT讲稿)Lecture 03 Frequent Itemsets and Association Rules Mining Massive Datasets.ppt
- 《Computer Networking:A Top Down Approach》英文教材教学资源(PPT课件讲稿,6th edition)Chapter 3 传输层 Transport Layer.ppt
- 分布式数据库系统的体系结构与设计(PPT讲稿)Architecture and Design of Distributed Database Systems.pptx
- 南京大学:Conceptual Architecture View(PPT讲稿).ppt
- 北京师范大学:《计算机应用基础》课程教学资源(PPT课件讲稿)第1章 计算机常识(主讲:马秀麟).pptx