编译原理与编译构造 LR文法

这篇博客详细介绍了LR文法的基础知识,包括状态命名、状态拓展、转换模型的构建,以及SLR(1)、LR(1)和LALR(1)文法之间的关系。文中通过具体的例子和转换图表,解释了如何解决移进-规约冲突和规约-规约冲突,展示了LR分析法在编译原理中的应用。
摘要由CSDN通过智能技术生成

本份课堂笔记来源于我院最最高大的七米八同学,不知道他用不用CSDN写博客,但是不管如何向他表示感谢。


LR文法——通用语法分析法,基于规约、FA

对于文法 BαAβ,Aγ ,我们有自动机,确切地说,是分层的有限自动机(NFA),如下图。

Markdown

对于每个状态(就是每个圈)的命名,我们不会和以前一样一路 AZ 命名下来,而是会有特定的命名方式。

状态命名

状态命名: LR{

就比如说,第一层的加黄的状态是 BαAβ ,第一层加蓝的状态是 BαAβ

第二层的最左边状态是 Aγ

其中, BαAβ 这种点在最后的 LR 项,叫做“可归约 LR 项”,否则叫做“移进 LR 项( shift  LR  item )”

状态的拓展

NFA{ ϵ

if(

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值