#
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级中南大学软件学院 陈志刚第六章 属性文法和语法制导翻译第六章属性文法和语法制导翻译6.1 属性文法6.2 基于属性文法的处理方法6.3 S-属性文法的自下而上计算6.4 L-属性文法和自顶向下翻译6.5 自下而上计算继承属性42120221中南大学软件学院 陈志刚6.1 属性文法 概述 语义处理程序设计
(1)终结符只有综合属性它们由词法分析器提供(2)非终结符既可有综合属性也可有继承属性文法开始符号的所有继承属性作为属性计算前的初始值F (E)综合属性=4由称为依赖图的一个有向图 描述分析树中的继承属性和属性中间的相互依赖关系依赖图的构造算法: for 分析树中每一个结点n do for 结点的文法符号的每一个属性a
#
#
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级编译原理(第三版) 陈火旺等编著(2012年9月-12月)主讲:朱世松计算机学院22022418第六章 属性文法和语法制导翻译属性 属性常用来描述事物或人的特征如:人的性别等商品的颜色重量单位等32022418
3编译原理编译原理编译原理 := ? 编译原理编译原理 = 8产 生 式 例5.3 = 51517图5-7val 如果一个SDD的每个属性都是综合属性则它是S属性可以按照分析树的自底向上顺序来计算各属性值后序遍历postorder (N) { for (从左边开始对N的每个结点C) postorder (C) 计算N的属性值 }S属性
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级第五章 语法制导翻译及中间代码生成5.1 引言在早期的一些编译程序中是在语法分析的基础上根据源程序中各语法成份的语义直接产生机器语言或汇编语言形式的目标代码现在的编译系统一般都将经过语法分析的源程序先翻译为某种形式的中间语言代码然后再将其翻译为目标代码 优点:使编译程序各组成部分功能更单一使得编译程序的逻辑结构更为清晰从而使编
Click to edit Master title styleClick to edit Master text stylesSecond levelThird levelFourth levelFifth level中国科大第四章 语法制导的翻译 本章内容1介绍语义描述的一种形式方法:语法制导的翻译它包括两种具体形式语法制导的定义翻译方案2介绍语法制导翻译的实现方法4.1 语法制导的定义
单击此处编辑母版标题样式单击此处编辑母版文本样式第二级第三级第四级第五级第五章 语法制导的翻译赵建华南京大学计算机系2010年3月介绍使用上下文无关文法引导语言的翻译CFG的非终结符号代表了语言的某个构造程序设计语言的构造由更小的构造组合而成一个构造的语义可以由小构造的含义综合而来比如:表达式xy的类型由xy的类型和运算符决定也可以从附近的构造继承而来比如:声明int x中x的类型由它左边的类型
违法有害信息,请在下方选择原因提交举报