编译原理第五章语法分析——自下而上分析内容总结

本章重点介绍了自下而上的语法分析方法,特别是LR分析法和算符优先分析。LR分析法是一种规范归约过程,通过ACTION和GOTO表进行分析。算符优先分析涉及终结符的优先关系,通过优先函数来定义。此外,还探讨了短语判断、构造算符优先关系表的方法以及LR(0)分析表的构造。难点在于LR(0)项目集规范族冲突的解决。
摘要由CSDN通过智能技术生成

一、学习内容

本章我们主要学习以自下而上的方法进行语法分析,首先需要了解移进和规约的基本思想,即用一个寄存符号的先进后出栈,把输入符号一个一个地移进到栈里,当栈顶形成某个产生式的候选式时,即把栈顶的这一部分替换成(归约为)该产生式的左部符号。规范规约是假定a是文法G的一个句子,我们称序列an,an-1,¼ ,a0是a的一个规范归约,实际上规范归约相当于最右推导的逆过程,由规范推导推出的句型称为规范句型。然后我们学习了用符号栈进行自下而上的语法分析,在分析开始时,将“#”预先进栈,作为栈底符号,同时将“#”作为输入串的结束符,自左向右对输入串ω不断向栈中进行移进——归约。再往下我们了解到算符优先分析法,定义算符之间优先关系,借助这种关系来寻找“可归约串”和进行归约,此时就需要定义两个终结符‘a’与‘b’的优先关系:a =.b表示a的优先性等于b;a .>b表示a的优先性大于b;a <.b表示a的优先性小于b ,需要注意的是这里的“=.”“.>”“<.”不同于数学上的 “=”“>”“<”,a =.b不一定对应着b =.a。引出算符文法,是指一个文法,如果它的任一产生式的右部都不含两个相继(并列)的非终结符,即不含…QR…形式的产生式右部,则我们称该文法为算符文法,也称OG文法。根据算符文法,引出算符优先文法以及算符优先关系表,具体的构造方法在知识运用中提及。随后我们学到了优先函数,把每个终结符q与两个自然数f(q)与g(q)相对应,使得若q1 <. q2,则f(q1) < g(q2);若q1 =. q2,则f(q1) =

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值