- 9
- 0
- 约1.27万字
- 约 65页
- 2018-03-27 发布于浙江
- 举报
[工学]05语法分析3-LR0_2
第5单元 语法分析 —— 自下而上分析法 四种动作 移进:表示栈顶尚未形成句柄,需要继续移进符号以形成句柄。 action[Sm, ai]=Sj:表示当前栈顶状态为Sm,输入符号为ai,则应将ai ?符号栈,同时将Sj ?状态栈。 归约:若当前栈顶符号串已构成句柄,则立即进行归约。 LR实质: LR(0)分析步骤 一、拓广文法 二、LR(0)项目 根据活前缀定义,一个规范句型的活前缀不含有句柄右边符号。因此,句柄和活前缀的关系有三种: 活前缀中含有句柄的全部符号(最长活前缀),即构成可归前缀。表明栈顶已形成某产生式的候选式,可进行规约; 活前缀中含有句柄的部分符号。表示某候选式的子串已出现在栈顶,但还需要继续读入符号; 活前缀中不含有句柄中的任何符号。 三、构造NFA→DFA 定义:设P → α·Xβ是文法G的一个LR(0)项,其中X是G的任意符号,则称P → αX·β是其后继项,X是其后继符号。 直观上看,后继项是把项中圆点右移一个符号位置所得的项。从句型识别的角度看这是显然的:当扫描过的输入符号已与产生式右部的α匹配时,后继的输入符号应该期望与产生式右部后继的符号X项匹配。 为了构造识别文法G的所有活前缀的有限自动机,需要介绍两个集合函数:项集I的闭包closure(I)和状态转换函数GO(I, X)。文法G的LR(0)项的集合称为LR(0)项集,简称项集。 四、构造LR(0)项目集规范族 P124 算法5.7 function closure (I) /* I 是项目集*/ { J= I; do{ 对于 closure (I)中的每个项目A ?? .B ?和产生式B? ? , 若B? .? 不在closure (I)中,则 把 B? .? 加到closure (I)中; }while(再没有项目加到J中); return J; }; 补例 1 已知G[S]如下: S ?aAcBe A ?b A ?Ab B ?d 其次,由产生式得到各个项目: S→ .S S→ S. S → .aAcBe S → a.AcBe S → aA.cBe S → aAc.Be S → aAcB.e S → aAcBe. A → .b A → b. A → .Ab A → A.b A → Ab. B → .d B → d. 下面求解项目集规范族C: 1. 首先,I0=closure({S→.S})={S→.S,S→.aAcBe} 用I0初始化C,此时,C={I0} 2. 第一次考察C中的项目集I。此时仅有I=I0,求GO(I0,X),X为文法的任一个符号: GO(I0,S) =closure({S→S.})= {S→S.} = I1 GO(I0,A)=closure({})={} 空 GO(I0,B) =closure({})={} 空 GO(I0,a) =closure({S→a.AcBe}) = {S→a.AcBe,A→.b,A→.Ab} = I2 GO(I0,b) =closure({})={} 空 GO(I0,c) =closure({})={} 空 GO(I0,d) =closure({})={} 空 GO(I0,e) =closure({})={} 空 此时,C={I0,I1,I2} 3. 第二次考察C中的项目集I。此时C中有三个项目集:I0、I1、I2。 显然,对I0不用重复考虑,下面首先考察 I1= {S→S.}: GO(I1,S) =closure({})={} 空 GO(I1,A)=closure({})={} 空 GO(I1,B) =closure({})={} 空 GO(I1,a) =closure({})={} 空 GO(I1,b) =closure({})={} 空 GO(I1,c) =closure({})={} 空 GO(I1,d) =closure({})={} 空 GO(I1,e) =closure({})={} 空 可见,对I1的考察没有扩大C。 再考察 I2= {S→a.AcBe,A→.b,A→.Ab}: GO(I2,S) =closure({})={} 空 GO(I2,A)=closure({S→aA . cBe, A→A
您可能关注的文档
- [工学]03散粒体材料.ppt
- [工学]03概率密度估计.ppt
- [工学]03矩阵位移法.ppt
- [工学]04 word练习4-表格编排.doc
- [工学]03第三章时域分析1.ppt
- [工学]03第三章Windows操作系统.ppt
- [工学]03第三章空间力系.ppt
- [工学]04-模式识别-非线性分类.ppt
- [工学]0411海.ppt
- [工学]04-1吸收.ppt
- 2026年及未来5年内中国液体氩气行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国黄铜合页行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国竹工艺家具行业投资前景及策略咨询研究报告.docx
- 2025年中国微机数显自动分析仪市场调查研究报告.docx
- 2026年及未来5年内中国微尘白色粉笔行业投资前景及策略咨询研究报告.docx
- 2025年中国微电脑型压胶机市场调查研究报告.docx
- 2026年及未来5年内中国数字化等功游泳训练测试系统行业投资前景及策略咨询研究报告.docx
- 2025年中国圆形花瓶市场调查研究报告.docx
- 2026年及未来5年内中国植物纤维静淀过滤器行业投资前景及策略咨询研究报告.docx
- 2025年中国超音波手套机市场调查研究报告.docx
最近下载
- 四川省2025年中考数学真题试卷十五套附答案.pdf VIP
- 《数据库原理与应用》课程标准.pdf VIP
- 本科论文毕设-基于JAVA酒店管理系统毕业设计论文.doc VIP
- 2025年德州职业技术学院单招笔试数学试题库含答案解析.docx VIP
- 氟化物微纳复合玻璃与透明陶瓷:设计原理、制备工艺与性能研究.docx VIP
- 2025海上风电系统智能运维的数字孪生技术(英文).pdf VIP
- 2025年德州职业技术学院单招《数学》真题(重点)附答案详解.docx VIP
- 牵引供电变电所-分区所-AT所.pdf VIP
- 投标产品质量、供货、售后服务、残次品退换承诺方案.docx VIP
- 子宫肌瘤的诊治中国专家共识解读.docx VIP
原创力文档

文档评论(0)