3编译原理编译原理编译原理 := ? 编译原理编译原理 = 8产 生 式 例5.3 = 51517图5-7val 如果一个SDD的每个属性都是综合属性则它是S属性可以按照分析树的自底向上顺序来计算各属性值后序遍历postorder (N) { for (从左边开始对N的每个结点C) postorder (C) 计算N的属性值 }S属性
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级第五章 语法制导的翻译赵建华南京大学计算机系2010年3月介绍使用上下文无关文法引导语言的翻译CFG的非终结符号代表了语言的某个构造程序设计语言的构造由更小的构造组合而成一个构造的语义可以由小构造的含义综合而来比如:表达式xy的类型由xy的类型和运算符决定也可以从附近的构造继承而来比如:声明int x中x的类型由它左边的类型
#
piler北京航空航天大学软件工程研究所第五章:语法制导翻译技术5.1 翻译文法(TG)5.2 语法制导翻译5.3 属性翻译文法(ATG)5.4 自顶向下语法制导翻译5.5 自底向上的语法制导翻译5.0 本章导言词法分析语法分析:解决单词和语言成分的识别及词法和语法结构的检查语法结构可形式化地用一组产生式来描述给定一组产生式我们能够很容易地将其分析器构造出来本章要介绍的是语义分析和代码生成技
单击 = 语法制导的定义 = 8L? = 10 = = 8 = 2 = 2 = 8分析树各结点属性的计算可以自下而上地完成 = 5 = = 5 = 语法制导的定义 = 8L?DLin 7D4 type2 entryL.5 属性计算次序2属性计算次序:构造输入的分析树id1in 5T10Lin 语法制导的定义 语法树语法树是分析树的浓缩表示:算符和关键字是作为内部结点语法制导翻译可以
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级第五章 语法制导翻译及中间代码生成5.1 引言在早期的一些编译程序中是在语法分析的基础上根据源程序中各语法成份的语义直接产生机器语言或汇编语言形式的目标代码现在的编译系统一般都将经过语法分析的源程序先翻译为某种形式的中间语言代码然后再将其翻译为目标代码 优点:使编译程序各组成部分功能更单一使得编译程序的逻辑结构更为清晰从而使编
Click to edit Master title styleClick to edit Master text stylesSecond levelThird levelFourth levelFifth level中国科大第四章 语法制导的翻译 本章内容1介绍语义描述的一种形式方法:语法制导的翻译它包括两种具体形式语法制导的定义翻译方案2介绍语法制导翻译的实现方法4.1 语法制导的定义
Programming§ 语法制导翻译概述E 设有文法 E∷=EE E∷=digit2在图所示子树中子树根处E·VAL的语义值是3这可用语义动作 E·VAL:=E(1)·VALE(2)·VAL算出使用这个语义动作时以底部最左的 E 的E·VAL的值来代替E(1)·VAL 而以右边 E 的E·VAL的值代替E(2)·VAL E2XTOPEE ? VAL=2状态栈S3E0
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级语法制导翻译为什么进行词法和语法分析用A→α进行归约表达的是什么意思看:operandterm E→E1TE1的值T的值的结果作为E的值——即:取来E1的值和T的值做加法运算结果作为E的值E.val=E1.valT.val第五章 语法制导翻译翻译的任务首先是语义分析和正确性检查若正确则翻译成中间代码或目标代码基本思想根据翻译
#
违法有害信息,请在下方选择原因提交举报