编译原理lr1实验报告

编译原理lr1实验报告

ID:30365167

大小:20.41 KB

页数:15页

时间:2018-12-29

编译原理lr1实验报告_第1页
编译原理lr1实验报告_第2页
编译原理lr1实验报告_第3页
编译原理lr1实验报告_第4页
编译原理lr1实验报告_第5页
资源描述:

《编译原理lr1实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划编译原理lr1实验报告  姓名:刘玉华学号:XX  课题:LR(1)分析法指导教师:富玉柱  LR(1)分析法  (1)分析法定义  LR分析法是一种有效的自底向上的语法分析技术,它能适用于大部分上下文无关文法的分析,一般叫LR(k)分析方法,其中L是指自左(Left)向右扫描输入单词串,R是指分析过程都是构造最右(Right)推导的逆过程(规范归约),括号中的k是指在决定当前分析动作时向前看的符号个数。  LR项目可以看成两个部分组成,一部分和LR

2、项目相同,这部分成为心,另一部分为向前搜索符集合。所以只有当面临的输入符属于向前搜索符的集合,才做规约动作,其他情况均出错。LR方法恰好解决SLR方法在某些情况下存在的无效规约问题。  2.LR(1)分析法的主要思想  (1)严格地进行最左归约。  (2)将识别句柄的过程划分为由若干状态控制,每个状态控制识别出句柄的一个符号。  (3)分析栈:存放已识别的文法符号和状态,描述的是分析过程中的历史和展望信息。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障

3、停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  (4)由一个总控程序来控制整个识别过程。  3.LR(1)分析法的构造方法  (A????,a)的二元式称为LR(1)项目。其中,A???是文法的一个产生式,a是终结符,称为搜索符。文法的LR项目集规范族指文法活前缀的有效的项目集。  (1)构造LR(1)项目集I的闭包函数CLOSURE(I)  a)I的任何项目都属于CLOSURE(I);  b)若项目(A???B?,a)属于CLOSURE(I),B??是一个产生式,则对于FIRST(?a)中的每个终结符b,如果(B???,

4、b)原来不在CLOSURE(I)中,则把它加进去;c)重复步骤b)直到CLOSURE(I)不再扩大为止。  (2)构造转换函数即GO函数  令I是一个LR(1)项目集,X是一个文法符号,函数GO(I,X)定义为:  GO(I,X)=CLOSURE(J),其中:J={(A??X??,a)

5、(A???X?,a)?I}。注:在执行转换函数GO时,搜索符并不改变。  (3)构造拓广文法G`的LR(1)项目集族C的算法  {C={CLOSURE({(S`??S,#)})};  DO{FORC中的每个项目集I和每个文法符号X  IFGO(I,X)非空且不属于C  把GO(

6、I,X)加入C中;目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  }WHILEC依然扩大;  }  4.LR(1)分析表的构造  假定LR(1)项目集规范族C={I0,I1,??,In},令每个项目集Ik的下标k为分析器的一个状态,G’的LR分析表含有状态0,1,??,n。  1.令那个含有项目[S’→.S,#]的Ik的下标k为状态表和GOTO表可按如下方法构造。  2

7、.若项目[A→α.,b]属于Ik,那么置ACTION[k,b]为“用产生式A→α进行规约”,简记为“rj”;(假定A→α为文法G’的第j个产生式)。  3.若项目[A→α.aβ,b]属于Ik且GO(Ik,a)=Ij,则置ACTION[k,a]为“把状态j和符号a移进栈”,简记为“sj”。  4.若项目[S’→S.,#]属于Ik,则置ACTION[k,#]为“接受”,简记为“acc”。  5.若GO(Ik,A)=Ij,A为非终结符,则置GOTO(k,A)=j;分析表中凡不能用规则1至5填入信息的空白格均置上“出错标志”。  按上述算法构造的含有ACTION和GO

8、TO两部分的分析表,如果每个入口不含多重定义,则称它为文法G的一张规范的LR(1)分析表。具有规范的LR(1)表的文法G称为一个LR文法。目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  5.LR(1)分析法的利弊  LR(1)的规约项目不存在任何无效规约,但在多数情况下同一个文法的LR(1)项目集的个数比LR(0)项目集的个数多。这是因为对同一个LR(0)项目集,由于搜

9、索符不同而对应着多个LR(1)项目集。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。