编译原理中算符优先分析的教学探讨.docVIP

编译原理中算符优先分析的教学探讨.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理中算符优先分析的教学探讨   文章编号:1672-5913(2008)12-0080-03   摘要:算符优先分析法是编译原理课程中的重点和难点之一。本文针对相等、小于和大于优先关系,分析了优先归约关系的本质,提出了优先关系和最左素短语的分析模型。   关键词:编译原理;归约;优先关系;最左素短语   中图分类号:G642   文献标识码:B      1引言      计算机科学与技术学科强调4个方面的专业能力:计算思维能力,算法设计与分析能力,程序设计与实现能力,计算机系统的认知、分析、设计和运用能力。这也是计算机科学与其他学科的重要区别。相关的理论是计算机学科的基础。理论方面的知识是计算机的真正灵魂。理论是从计算机应用当中抽象出来的,目的在于使用抽象出来的理论去更好地指导实践[1]。   程序设计与实现能力在编译原理课程得到了具体的体现。编译原理是计算机学科中少有的从实践到理论,再从理论到实践的一门专业课程。编译技术不断进步,已经成为计算机科学中发展最迅速、最成熟的一个重要分支。编译技术集中体现了计算机科学发展的重要成果与精华[2]。   程序语言及其编译的研究在计算机科学中的始终处于非常重要的地位。编译程序构造的基本原理和技术蕴涵计算机科学解决问题的思路和抽象、解决问题的方法,也广泛应用于一般软件的设计和实现,其中的设计思想、算法、思维方式和技术都可能会对学生今后的发展产生比较大的影响。编译原理对计算机专业的学生的重要性与高等数学对理科学生的重要性几乎可以相提并论。同时,由于这门课程涉及其他多门课程的知识,使得它成为大学阶段中最难学的课程之一。   自下而上语法分析中的算符优先分析方法是是编译原理课程中的重点和难点之一。算符优先分析法使用终结符号之间的归约顺序进行语法结构的分析。在算术表达式中,有运算符号的优先级和结合性的规定,而算符优先分析法的实质就是仿效表达式的计算过程而设计的。其本质是对终结符之间的优先关系和最左素短语进行分析。      2终结符之间的优先关系      2.1算符优先文法   上下文无关文法G,如果没有形如   P→ε   或   P→...QR...   的产生式,则称G为算符文法。   算符优先分析方法考虑的是可能相邻的两个终结符之间的归约顺序问题(模仿算术表达式中相邻的两个运算符之间的计算的顺序问题)。   对算符文法G,a,bIcirc;VT 优先关系定义为   (1) 若G有P→...ab...或P→...aQb..., 则a=b   (2) 若G有P→...aQ...且QTHORN;+b… 或 QTHORN;+Rb...,则ab   (3) 若G有P→...Qb... 且QTHORN;+...a 或 QTHORN;+…aR,则ab   若算符文法G的任何终结符a、b之间的优先关系至多只有=、、中的一个;或者终结符a、b之间没有优先关系 则G称为算符优先文法。   2.2优先关系模型   对于3种优先关系,分别建立对应的优先关系分析模型,自然引入构造优先关系表所需要的FIRSYVT和LASTVT集合。      (1) 相等优先关系   若文法G 有   P→...ab...或P→...aQb...   则a与b是一起归约为P的(当然,还要连同其他的一些符号)。因此,a与b的归约顺序是一致的(相等的),即 a=b。相等优先关系模型如图1所示。      图1相等相等优先关系模型图   (2) 小于优先关系   若文法G有   P→...aQ... 且Q THORN;+b…或QTHORN;+Rb...   那么,需要先规约包含b的最左素短语为Q,然后才可能规约…aQ…为P。即ab。小于优先关系模型如图2所示。      图2小于优先关系模型图   而对于Q THORN;+b…或QTHORN;+Rb... ,定义FIRSTVT集合为   FIRSTVT(Q)={a|QTHORN;+a… 或QTHORN;+Ra…,aIcirc;VT,R Icirc;VN}   (3) 大于相等优先关系   若G中有   P→...Qb...且QTHORN;+...a或QTHORN;+…aR   那么,需要先规约包含a的最左素短语为Q,然后才可能规约…Qb…为P。即ab。大于优先关系模型如图3所示。      图3大于优先关系6模型图   对于QTHORN;+...a或QTHORN;+…aR,定义LASTVT集合为   LASTVT(Q)={a|QTHORN;+...a 或 QTHORN;+…aR,aIcirc;VT,R Icirc;VN}   2.3特殊符号#的优先关系   对于算符优先分析

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档