首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >编译器构造中的语法分析过程

编译器构造中的语法分析过程
EN

Stack Overflow用户
提问于 2014-02-24 21:56:40
回答 1查看 1.2K关注 0票数 0

我现在正在读“龙书”。

第二章介绍了句法分析的过程。我很难理解这个过程的全貌。通过阅读这本书,我有时会对语法分析器中的事情发生的顺序感到困惑。

所以根据我的理解:

语法分析器包含语法定义,它使用上下文无关语法定义语法。这基本上是语法分析器的第一部分吗?那么,语法分析器是否包括语法定义?

之后,由Lexical生成的令牌进入语法分析器。然后,语法分析器通过CFG通过生成解析树来检查字符串输入是否有效。

据我所知,这个解析树最终会变成一个(抽象的)语法树(它包含的细节比解析树少)。这棵树将进入语义分析器。

有人能确认一下,我对语法分析器的大致“总体图”理解是否正确,顺序是否正确?

EN

回答 1

Stack Overflow用户

发布于 2014-02-24 22:21:41

语法分析器包含语法定义,它使用上下文无关语法定义语法。

不是的。在表驱动的解析器中,它包含一个从语法生成并驱动解析器的表。在手写解析器中,代码结构强烈地反映了语法.在这两种情况下,都不能正确地说解析器实际上包含语法。它在某种程度上根据语法分析输入。

这基本上是语法分析器的第一部分吗?

不是的。我不知道你从哪里得到“第一部分”。

那么,语法分析器是否包括语法定义?

如上文所述。

在那之后

不,在那之前

由Lexical生成的令牌进入语法分析器。语法分析器然后通过CFG检查字符串输入是否有效。

对,是这样。

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

https://stackoverflow.com/questions/21999914

复制
相关文章

相似问题

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