第五章 语法分析——自下而上分析

本文介绍了自下而上的语法分析方法,包括规范归约的定义、算符优先文法及其构造过程,以及LR分析法。重点讨论了算符优先分析算法的设计,LR分析法的特点,如LR(k)分析器的构造,并提到了活前缀的概念及其在分析过程中的作用。此外,还涵盖了LR(0)和LR(1)文法,以及分析表的构造。内容详尽,涉及上下文无关文法的多种分析策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知识总结与感受:

自下而上分析过程:边输入单词符号,边归约。核心问题:识别可归约串

规范归约的定义:假定a是文法G的一个句子,我们称序列an,an-1,,a0是a的一个规范归约,如果此序列满足:  (1)  aan= aa  (2)  aa0为文法的开始符号,即aa0=S  (3)  对任何i,0 < i <= n, aai-1是从aai经把句柄替换成为相应产生式左部符号而得到的。句柄:一个句型的最左直接短语称为该句型的句柄。

 

如果一个算符文法G中的任何终结符对(a,b)至多只满足下述三关系之一: a=.b

a>.b

a<.b

则称G是一个算符优先文法(OPG文法)。

构造算符优先关系表

(1)通过检查产生式的每一个候选式可以找出满足a=.b

  (即P→…ab…或P→…aQb…的产生式)

(2)为了满足<.和>.,需对G中每个非终结符P构造两个集合FIRSTVT(P)和LASTVT(P):

(3)构造集合FIRSTVT(P)的算法

按其定义,可用下面两条规则来构造集合FIRSTVT(P):

① 若有产生式P→a…或P→Qa…,

aÎFIRSTVT(P);

② 若aÎFIRSTVT(Q),且有产生式P→Q…,<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值