ch05-语法制导翻译技术.pdf

  1. 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
  2. 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
  3. 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
第5章 语法制导翻译技术 LI Wensheng, SCST, BUPT 知识点:语法制导定义、翻译方案 S-属性定义、L-属性定义 S-属性定义的翻译 L-属性定义的翻译 语法制导翻译技术 语义分析涉及到语言的语义 形式语义学的研究开始于20世纪60年代初 形式语义学可以分为三类 – 操作语义学:通过说明程序在一个机器中是如何执行的来定义程序的 语义,着重模拟数据加工过程中计算机系统的操作 – 指称语义学:使用数学函数来描述程序和程序的构成,函数通过把语 义值联系到正确的语法结构来描述程序的语义,主要描述数据加工的 结果 – 公理语义学:把数理逻辑应用于语言的语义,语言结构与谓词转换器 联系在一起,语言结构的行为以命题刻画,通过描述程序执行对程序 断言的影响来定义程序、语句或语言结构的语义,主要用于程序正确 性证明 W e n 语法制导翻译技术 s h e n g – 多数编译程序普遍采用的一种技术 L i – 比较接近形式化 B U P T 2 语法制导翻译技术 – 根据翻译目标的要求确定每个产生式所包含的语义; – 根据产生式包含的语义,分析文法中每个符号的语义; – 把这些语义以属性的形式附加到相应的文法符号上; – 根据产生式的语义,给出符号属性的求值规则 (即语义规 则),从而形成语法制导定义。 – 在语法分析过程中,当使用该产生式时,根据语义规则对 相应的属性进行求值,从而完成翻译。 例如:考虑算术表达式文法 E→E +T E.val=E .val+T.val 1 1 – 总目标:计算表达式的值 E→T E.val=T.val T→T *F T.val=T .val*F.val – 产生式 E→E +T 的语义:表达式 1 1 1 的值由两个子表达式的值相加得到 T→F T.val=F.val F→(E) F.val=E.val W e – 分析每个符号的语义,并以属性的 n F→digit F.val=digit.val s h e n 形式记录:E.val、E .val、T.val g 1 L i – 求值规则:E.val=E .val+T.val 1 B – 语法制导定义:产生式 语义规则 U P T 3 语法制导翻译技术(续) 例如:考虑算术表达式文法 – 总目标:检查表达式的类型 – 产生式 E→E1+T 的语义:

文档评论(0)

wx171113 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档