- 1、本文档共163页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
compiler5_语法分析要点
第五章 语法分析 5.1 语法分析概述 5.2 自顶向下分析法 5.2.1 自顶向下分析的一般过程 5.2.2 自顶向下分析方法特点 5.2.3 自顶向下分析存在的问题及解决方法 5.2.4 递归子程序法(递归下降分析法) 5.3 自底向上分析法 5.3.1 自底向上分析的一般过程(移进-归约分析) 5.3.2 算符优先分析法 5.3.3 LR分析法 5.2 自顶向下分析 5.2.1 自顶向下分析的一般过程 5.2.2 自顶向下分析方法特点 5.2.3 自顶向下分析存在的问题及解决方法 5.2.4 递归子程序法(递归下降分析法) 5.2.1 自顶向下分析的一般过程 5.2.2 自顶向下分析方法特点 5.2.3 自顶向下分析存在的问题及解决方法 1. 左递归文法: 2. 回溯问题 3.文法的两个条件 5.2.4 递归子程序法(递归下降分析法) 5.2.5 用递归子程序法构造语法分析程序的例子 5.2.6 LL分析法 1、LL分析程序构造及分析过程 例:设有文法G[S]: S→aBc | bAB A→aAb | b B →b | ε 5.3 自底向上分析 5.3.1 移进-归约分析 (自底向上分析的一般过程) 5.3.2 算符优先分析法 5.3.3 LR分析法 5.3 自底向上分析 基本算法思想: 5.3.1 移进—规约分析(Shift-reduce parsing) 要点:建立符号栈,用来纪录分析的历史和现状,并根据所面临的状态,确定下一步动作是移进还是规约。 5.3.2 算符优先分析(Operator-Precedence Parsing) 5.3.3 算符优先分析法的进一步讨论 (1)算符优先文法(OPG) (2)构造优先关系矩阵 (3)算符优先分析算法的设计 5.3.4 LR分析法 5.3.4.1 LR分析法的概述 5.3.4.2 LR分析 5.3.4.1 LR分析法的概述 (1)LR分析法的优缺点 (2)LR分析器有三部分: 状态栈、分析表、控制程序 (3)分析表的种类 (4)补充说明 (1) LR分析法的优缺点: 1) 适合文法类足够大,适用于所有上下文无关文法 2) 分析效率高 3) 报错及时 4) 可以自动生成 5) 手工实现工作量大 5.3.4.2 LR分析 (1)逻辑结构 (2) LR分析过程 ACTION表 GOTO表 文法G[E] :(1)E::=E+T (2)E::=T (3)T ::=T*F (4)T::=F (5)F::=(E) (6)F::=i 5.3.4.3 构造SLR分析表 构造LR分析表的方法是: (1)根据文法构造识别规范句型活前缀的有穷自动机DFA (2)由DFA构造SLR分析表 第五章 语法分析小结 * * 于是算符优先分析法:如何确定当前句型的最左素短语? 设有OPG文法句型为: #N1a1N2a2…NnanNn+1# 其中Ni为非终结符(可以为空), ai为终结符 定理:一个OPG句型的最左素短语是满足下列条件的 最左子串:aj-1Njaj…NiaiNi+1ai+1 其中 aj-1aj aj=aj+1, aj+1= aj+2 ,…, ai-2= ai-1, ai-1= ai ai ai+1 . . . . . . * * 根据该定理,要找句型的最左素短语就是要找满足 上述条件的最左子串. 注意:出现在aj左端和a i右端的非终结符号一定属于这个素短语,因为我们的运算是中缀形式给出的(OPG文法的特点)NaNaNaN ?NaWaN 例: 文法G[E] E::=E+T|T T::=T*F|F F::=(E)|i 分析文法的句型T+T*F+i * * 可以看出: 1. 每次规约最左子串,确实是当前句型的最左素短语(语法树) 2. 规约的不都是真句柄(仅i规约为F是句柄,但它是最左短语) 3. 没有完全按规则进行规约,因为素短语不一定是简单短语 步骤 句型 关系 最左子串 规约符号 1 2 3 4 #T+T*F+i# #T+T+i# #E+i# #E+F# #+*+i# #++i# #+i#
您可能关注的文档
- 一、仪表礼仪.ppt
- 一、单向选择题 ……… 1 二、多项选择题.doc
- 一 开辟文明交往的航线1.ppt
- 一1我看到了什么-三年级.ppt
- CO2气体保护焊接工艺参数图标焊缝符号说明及工艺参数.doc
- 一、新朝灭亡二、东汉建立三、强化皇权.ppt
- CN201620158925.3-一种多旋翼无人机-申请.docx
- 一、种群基因频率的改变与生物进化.ppt
- CNG加气站安全培训-0703.pptx
- CLBio003自动生化分析仪培训(公共培训).ppt
- 甘肃省XB师范大学附属中学2025届高三上学期一模诊断考试地理答案.doc
- 甘肃省XB师范大学附属中学2025届高三上学期一模诊断政治含解析.doc
- 安徽省皖江名校2024-2025学年高一上学期12月联考英语无答案.doc
- 2025年1月八省联考高考综合改革适应性测高三化学陕西山西宁夏青海卷无答案.doc
- 2025年1月八省联考高考综合改革适应性测高三化学四川卷无答案.doc
- 2025年1月八省联考高考综合改革适应性测高三政治陕西山西宁夏青海卷无答案.doc
- 2025年1月内蒙古自治区普通高等学校招生考试适应性测试(八省联考)历史无答案.doc
- 2025年1月内蒙古自治区普通高等学校招生考试适应性测试(八省联考)历史含解析.doc
- 2025年1月四川省普通高等学校招生考试适应性测试(八省联考)历史含解析.doc
- 2025年1月四川省普通高等学校招生考试适应性测试(八省联考)政治无答案.doc
文档评论(0)