版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1.LR分析程 1.LR分析程序的逻符号第7第7章LR武汉大学计算机学院握握7.17.1LR分析法和LR1.LR分析程序的逻辑结#……7.1LR分析法和LR1.LR分析程序的逻辑结输入符7.1LR分析法和LR1.LR分析程序的逻辑结输入符号串,总控程序根据分析表分析并给出判断结果符号输入 1.LR分析程序的逻输入符号串,总控程序根据分析表分析并给出判断结果符号输入 状态符号输入##…… #…… 7.17.1LR分析法和LR1.LR分析程序的逻辑结构——i+*()#ETF0123123482356937897.17.1LR分析法和LR1.LR分析程序的逻辑结构——#…… 7.1LR分析法和LRLR分析过程符号 输入若ACTION7.1LR分析法和LRLR分析过程符号 输入若ACTIONqi,ak]=rj,且第j条产生式为U→x,|x|=m,且分析表中有GOTO[qi-m,U]=qt,则三元式变(q0q1…qi-mqt,#X1X2…Xi-mU,aki##…… 1132133415361i+*()#ETF012312348235693789规范句型活前LR(0)用LR(0)用LR(0)项目来表示一个句柄的所有识别状态7.2LR(0)分析表的构 各句柄的识别过SaA cB Ab 规范句句识别各句柄时已获得的符ba,adbabbcde的语法abbcde的语法活前缀包abbcde的语法活前缀包含了句柄识别到当前时刻的历史每一个活前缀所指示出的分析程abbcde的语法1.LR分析法的基本原如何识别状态符号输入1.LR1.LR句bd规范规范句句bd#……1.1.LR分析法的基本对句柄的识别过程就是对规范句型的活前缀的识别过程用确定的有穷自动机识别一个文法的所有规范句型的活前缀2.构造识别规范句型活前缀的文2.构造2.构造识别规范句型活前缀的DFA——以LR(0)项目集为状态qi={S'→.S,S→.aAcBe2.构造识别规范句型活前缀的DFA——以LR(0)项目集为状态I的任何项目均属于如果A→α.Bβ属于CLOSURE(I),则所有B→.γ2.2.构造识别规范句型活前缀的DFA——以LR(0)项目集为状构造DFA的映iijIj=CLOSURE({A→αX.β|A→α.Xβ在Ii中Ii和Ij之间的这种转换关系用函数GOTO(Ii,X)=Ij表示若Ii和Ij相同,则取消Ij,而GOTO函数为GOTO(Ii,X)=Ii2.构造识别规范句型活前缀的DFA——举ccLR(0)项目集规范族B→c.Bd3.构造LR(0)分析①若U→x.ayIi,且GO(Ii,a)=Ij,aVT,则ACTION[i,a]=“Sj”②若S'→S.Ii,则置ACTION[i,$]=“acc”④若GOTO(Ii,U)=Ij,其中UVN,则置GOTO[i,U]=“j”②abGOTO(I,U)=I,GOTO[i,U]=“j”abcd#EAB0112437456789Ii(状状i+*()#ETF012312348235693789r14.LR(0)文 Ii (2.LR(0)方法的问分析文法G[S]中所有以T作为句柄的句型分析文法G[S]中所有以E+T作为句柄的句型#},这个集合正好是FOLLOW(E)22.LR(0)方法的问①若U→x.ayIi,且GO(Ii,a)=Ij,aVT,则ACTION[i,a]=“Sj”②若S′→S.Ii,则置ACTION[i,$]=“acc”④若GOTO(Ii,U)=Ij,其中UVN,则置GOTO[i,U]=“j” r1 r1 假设一个状态I假设一个状态Ii项Ii={4.SLR(1)③若U→x.Ii,则对任意终结符a③若U→x.Ii,则对FOLLOW(U)中的终结符aI”i(“(T→T*状i+*()#ETF01231234823569378955.SLR(1)文iIi={满足{b1,b2,…,bm}和FOLLOW(V1)、FOLLOW(V2)、…FOLLOW(Vn)两两互不相交,则称这种文法G为SLR(1)文法1.SLR(1)分析文法G[S]中所有以T2.2.对SLR(1)分析表构造算法的分③若U→x.Ii,则对任意终结符a③若U→x.Ii,则对FOLLOW(U)中的终结符a和$,均分析文法G[S]中所有以T作为句柄的句型但并不是FOLLOW(E)中的每一个符号都可以出现在每一个句柄T后3.解3.解决问题的方法还需要句柄之后的信息帮助!分析输入设有文法G[Z],w=xuy是它的一个句型,如果且则称句型xuy中的子串u为句型xuy(相对于非终结符号的短语aa……a分析文法G[S]中所有以T作为句柄的句型但并不是FOLLOW(E)中的每一个符号都可以出现在每一个句柄T后如何记住每一个句柄的上下文4.LR(1)4.LR(1)向前搜索符a只对归约项目[U→vw.,a]在其它项目中,a只是起一个传递5.构造识别规范句型活前缀的DFA——以LR(1)项目集为状态I的任何项目均属于55.构造识别规范句型活前缀的DFA——以LR(1)项目集为状态i Ij=CLOSURE({[A→αX.β,a]|[A→α.Xβ,a]在Ii中Ii和Ij之间的这种转换关系用函数GOTO(Ii,X)=Ij表示若Ii和Ij相同,则取消Ij,而GOTO函数为GOTO(Ii,X)=Ii6.构造识别规范句型活前缀的DFA——举IIR→LS7.LR(1)文 LR(1)分析表的构造 LR(1)分析表的构造—LR文法的含状态符号输入1.LR(1)方法的不——分析表太庞大如何解空间的有效使用问题…#…方项记录的信归约造分析实8.构造8.构造LR(1)①若[U→x.ay,b]Ii,GO(Ii,a)=Ij,aVT,则ACTION[i,a]=“Sj”②若[S′→S.,$]Ii,则置ACTION[i,$]=“acc”④若GOTO(Ii,U)=Ij,其中UVN,则置GOTO[i,U]=“j”8.构造LR(1)分析表——SR则ACTION[i,$]=“acc”[U→x.,a]I④若状i*=#SLR0123123487569789SLS则ACTION[i,$]=“acc”*置GOTO[i,U]=“j”。状状i*=#SLR0123123r2697.6二义文法的LR分效率高——级)进行归约。7.6二7.6二义文法的LR分⑵得到 的LR分析表⑶分析原因,确定无二义
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年贵阳市员额法官遴选面试考题(含答案)
- 行动培养健康习惯预防传染病侵袭小学主题班会课件
- 2026年ICU专科护士考核试题(附答案)
- 化学品供应商确认收到化学品提货通知(4篇)范文
- 广告创意策划执行力与营销效果绩效评定表
- 关于2026年库存管理系统优化建议回复函(8篇)
- 远离毒品侵害培养健康人生小学主题班会课件
- 警惕网络陷阱守护个人信息四年级主题班会课件
- 广告创意设计师项目创意度KPI考核表
- 合作意向书签署流程安排时间表(6篇)范文
- 《船舶避碰与信号》期末考试复习题库(含答案)
- 医药代表KOL培养
- 《职业卫生》专题培训
- 脾脏的外科解剖及部分切除术
- 2024年河南中烟工业有限责任公司招聘笔试参考题库含答案解析
- 黄芪注射液联合当归注射液对急性失血性休克围手术期血乳酸水平和氧代谢的影响
- 洋河小曲终端生动化操作指导培训手册课件
- 走迷宫2(可打印)
- JJG 646-2006移液器
- JJG 141-2013工作用贵金属热电偶
- 作文指导《我想对你说》课件
评论
0/150
提交评论