自底向上的语法分析

自底向上分析中,分析过程的每一步都是从当前句型中选择一个可归约的子串,将它归约到某个非终结符号

实现自底向上分析最常用的技术就是移进-规约分析,边移入边分析,一旦栈顶符号串形成某个句型的句柄或其他可归约串的时候就进行归约,归约的结果就是将句柄或其他可归约串从栈顶部分给弹出,然后将相应的非终结符压入栈中,重复这一个过程直到归约到栈中只剩文法的开始符号时则为分析成功,也就确定了输入串是文法的句子

其实自底向上分析的关键问题就是分析过程中如何确定句柄或其他可归约串,也就是说如过我们能知道何时在栈顶符号串已形成某句型的句柄或其他可归约串,这样之后我们就能够确定何时进行归约

这里写图片描述

表达式的右边是栈顶,最左规约是最右推导的逆过程,每次规约的符号串称为句柄,一旦句柄形成,我们就立刻将其进行规约,因此保证了每步规约都是最左规约
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述

在自底向上分析过程中,我们采取的是最左规约,因此句柄相当于是句型的最左短语,所以下面就对< IDS >,iB进行规约

这里写图片描述

猜你喜欢

转载自blog.csdn.net/ZCMUCZX/article/details/80656193
今日推荐