首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LL(1)语法解释

LL(1)语法解释
EN

Stack Overflow用户
提问于 2015-10-08 22:23:22
回答 1查看 525关注 0票数 0

我怎么解释这个语法?我不明白为什么有些话是大胆的。

如果我正在为此编写一个解析树/表,我会包含粗体单词吗?我想弄清楚图中的语法是否是LL(1),但不知道怎么读。任何帮助都将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-09 01:32:41

粗体项目是记号(in,a,b和c也应该是粗体;您的老师的错误)。尖括号中的项目是生产规则。

如果语法是LL(1),如果每个地方都存在一个替代(由\分隔),解析器可以只看一个标记(下一个)就可以决定追求哪个选项。

以规则为例。它有四种选择。必须从令牌(如果是)开始。必须从令牌(而不是)开始。必须从令牌begin开始。这只剩下一个变量,它必须以一个变量开头,即abc中的一个。因此,就它而言,LL(1)解析器可以处理该规则,因为它只需要检查一个令牌就可以在这四种可能性之间做出决定。

如果任何规则需要(例如)检查两个标记,则LL(1)解析器无法处理该语法--它需要一个LL(2)解析器。

我希望这能帮到你。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33026925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档