四大LR分析表

本文深入探讨了LR分析表的四种类型:LR(0)、SLR(1)、LR(1)和LALR(1),解析它们在文法分析中的应用和差异。LR(0)文法范围最小,LR(1)分析最强。构造LR(0)和LR(1)自动机是分析的关键步骤,LR(1)自动机通过向前搜索符号增强分析能力。文章详细阐述了如何判断文法是否为LR(0)或SLR(1),并展示了如何构造相应的分析表。
摘要由CSDN通过智能技术生成

四大LR分析表

即 LR(1)文法范围最大,而 LR(0)文法范围最小。同时也说明了四种文法分析过程的强弱,即 LR(1)文法分析最强,而 LR(0)文法分析最弱。

四种文法分析过程基本有三大步:写出自动机(即 LR(0)或 LR(1)项集族,后面都称作自动机) -> 构造文法分析表-> 进行文法分析过程。其中后两步都是类似或者说几乎完全一样的,第一步中的自动机有两种: LR(0)自动机和 LR(1)自动机。LR(0) 和 SLR文法分析用的是 LR(0)自动机,LR(1)和 LALR文法分析用的是 LR(1)自动机。而LR(1)自动机构造方法和LR(0)自动机的构造方法相同,只是多增加了向前搜索符号。

原文链接:https://blog.csdn.net/zuzhiang/article/details/79047743

1.LR(0)分析表

gBcjKETm-1651506778784)(D:/学习/Java/Java笔记/图片/LR(0)分析表.png)]

2.SLR(1)分析表在这里插入图片描述

在这里插入图片描述

四个问题:

  1. 写出活前缀的DFA
  2. 是不是LR(0)文法
  3. 如果不是LR(0)文法,是不是SLR(1)文法
  4. 如果是SLR(1)文法,构造出SLR(1)文法分析表

3.LR(1)分析表

在这里插入图片描述
在这里插入图片描述

4.LALR(1)分析表

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值