计算机编译原理第04(4)章

上传人:jkl****17 文档编号:253304276 上传时间:2024-12-11 格式:PPT 页数:23 大小:1.39MB
收藏 版权申诉 举报 下载
计算机编译原理第04(4)章_第1页
第1页 / 共23页
计算机编译原理第04(4)章_第2页
第2页 / 共23页
计算机编译原理第04(4)章_第3页
第3页 / 共23页
资源描述:

《计算机编译原理第04(4)章》由会员分享,可在线阅读,更多相关《计算机编译原理第04(4)章(23页珍藏版)》请在装配图网上搜索。

1、Reading Fun,Sub topics go here,*,4.4.4,算符优先分析算法的设计,对于算符优先分析法,它虽然是一种自下而上的语法分析方法,但它并不是,一种规范归约,的分析方法。,4.4.4,算符优先分析算法的设计,这是因为在算符优先文法中,仅在终结符号之间定义优先关系而未对非终结符定义优先关系,从而无法使用优先关系表去识别由单个非终结符组成的可归约串,这也就是说,算符优先分析法不是用,句柄,来刻画可归约串,而是用,最左素短语,来刻画可归约串的。,4.4.4,算符优先分析算法的设计,1.,最左素短语,所谓句型的,素短语,是指这样一种短语,它至少包含一个终结符,并且除自身之外,

2、不再包含其它的素短语。句型最左边的素短语称,最左素短语,。,4.4.4,算符优先分析算法的设计,例如,有文法,G E,E,E+T|T,T T,*,F|F,F (E)|id,求该文法句型,T+T*F+id,的素短语和最左素短语。,首先给出句型,T+T,*,F+id,的语法树,见,下图,:,4.4.4,算符优先分析算法的设计,其短语有:,T+T,*,F+id,T+T,*,F,T,T,*,F,id,由素短语定义可知,T,*,F,和,id,是素短语。,T,*,F,为最左素短语。,注意,:,T,是该句型的句柄,而不是素短语。,E,E,+,T,E +T F,T T *F id,4.4.4,算符优先分析算法

3、的设计,2,.,识别句型最左素短语的方法,由算符文法的定义可知,算符优先文法的任何句型都没有相邻的两个非终结符。,其句型总可以表示成:,$N,1,a,1,N,2,a,2,N,n,a,n,N,n+1,$,其中每个,N,i,为非终结符或空,a,i,为终结符,(,1in,),4.4.4,算符优先分析算法的设计,对算符优先文法,G,有如下定理:,一个算符优先文法,G,的任何句型的最左素短语是满足下列条件的最左子串,:,N,i,a,i,N,i+1,a,i+1,a,j,N,j+1,a,i-1,a,i,.,6.3.3,算符优先分析算法的设计,需要指出的是出现在,a,i,左端的非终结符,N,i,和,a,j,右

4、端的非终结符,N,j+1,是属于素短语的。,这是由于算符文法的任何句型中终结符和非终结符相邻时含终结符的短语必含相邻非终结符。,4.4.4,算符优先分析算法的设计,对上述句型,$T+T,*,F+id$,写成算符优先分析形式为:,a,i,a,i+1,a,j-1,a,j,=,.,=,.,a,j,a,j+1,.,a,i-1,a,i,.,$N,1,a,1,N,2,a,2,N,3,a,3,a,4,$,因有,$+,*,+$,.,.,.,故由最左素短语定理有,N,2,a,2,N,3,即,T,*,F,是,最左素短语。,4.4.4,算符优先分析算法的设计,根据最左素短语的定理,,最左素短语中的终结符号具有相同的

5、优先关系,并且,由于最左素短语中的符号是当时最先要归约的串,其优先关系先于最左素短语之外的符号,所以,我们使用一个用于存放文法符号的先进后出栈,并利用优先关系表,可以确定最左素短语是否已形成来决定分析器的动作,。,3.,算符优先分析程序的设计,4.4.4,算符优先分析算法的设计,基本思想,:,$,t,1,t,3,t,j+1,t,2,t,j,t,i+1,t,n,$,符号栈,优先关系,t,i,尾,头,最左素短语,3.,算符优先分析程序的设计,.,=,.,.,.,.,a,j,a,j+1,a,i,a,i,a,j-1,a,j,=,.,=,.,返回图,4.4.4,算符优先分析算法的设计,下面给出算符优先分

6、析算法,。,输入:输入符号串,W,和优先关系表。,输出:若,W,是正确的句子,则接收,,否则输出错误信息。,方法:执行下图算法。,栈置初值,K,1,SK,$,当前输入符号读入,a,SK,是终结符?,j,K,Y,j,K1,N,S j,是终结符?,Q,S j ,j,j-1,Y,S j+1SK,是最左素短语,K,j+1,SK,N,Y.,K=2,且,a=$?,结束,Y,N,SK,a,K,K+1,Y,error,N,j,j-1,N,S j a?,.,S j,a?,或,S j,a?,N,.,=,.,Y,S j Q?,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.

7、,.,=,.,.,.,.,.,归约,id,$,移进,$,.,归约,$,.,$,=,.,结束,$,id,+id$,移进,.,.,$N,+,id$,移进,.,归约,4.4.6,算符优先分析法的局限性,由于算符优先分析法跳过了所有单非产生式之间的归约,这样算符优先分析比规范归约要快得多,这既是优点也是缺点。,由于忽略非终结符在归约过程中的作用,可能导致把本来不是句子的输入串误认为是文法句子。,4.4.6,算符优先分析法的局限性,设有算符优先文法,A A;D|D,D D(E)|F,F a|(A),E E+A|A,6.3.6,算符优先分析法的局限性,该文法对应的算符优先关系表如下表所示。,;,a,+,(

8、,),$,;,a,+,(,),$,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,=,.,=,.,4.4.6,算符优先分析法的局限性,对输入串,(a,a),进行算符优先分析,其结果能正确地进行归约。,但是,从该文法推导不出,(a,a),。,即输入串,(a,a),不是文法句子。,当然,算符优先分析的这种局限性可以从技术上加以弥补。,Transitional Page,Backdrops:,-These are full sized backdrops,just scale them up!,-Can be Copy-Pasted out of Templates for use anywhere!,,

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

相关资源

更多
正为您匹配相似的精品文档
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!