LR(0)项目集规范族和分析表的构造

1. LR分析
  • LR分析是干什么用的?简单来说就是你在编程时编译器用来判断你输入的符号串是否合法以及时哪一种类型。官方的说法时LR分析是一种能根据当前分析栈中的符号串和向右顺序查看输入串的k个符号就能唯一确定分析器的动作是移进还是归约和使用哪一个产生式规约。现在学习编译原理一个月了,到现在所学的内容只感到正则文法判别、自上向下分析、自下向上分析、有限自动机这几个主题有点用,但这些也是在设计编程语言的初始阶段,还有很多的内容需要学习。
2. LR组成部分
  • 总控程序:名字高达上,其实就是流程判别的实现代码
  • 分析表:这个最为重要,后面就是讲如何构建分析表。
  • 分析栈:分析栈包括符号栈和状态栈,很简单,属于数据结构的内容。
3:LR(0)项目集规范族的构建
  • 项目集规范族的构造方式有三种,这里采用第三种方式:把拓广文法的第一个项目{S’->*S}作为初态集的核,通过求核的闭包和转换函数,求出LR(0)项目集规范族,在由转换函数建立状态之间的连接关系。哇!好多陌生的词?什么叫拓广文法?什么叫核?…其实都很简单,看一个例子就能全部明白,不要被专业名词吓倒。
    在这里插入图片描述
    利用
  • 11
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值