CFG的分析树的定义

编译原理 —— CFG的分析树
  • 根节点的标号为文法开始符号
  • 内部结点表示对一个产生式 AβA→β 的应用,该结点的标号是此产生式左部 AA 。该结点的子结点的标号从左到右构成了产生式的右部 ββ
  • 叶结点的标号既可以是非终结符,也可以是终结符。从左到右排列叶节点得到的符号串称为是这棵树的产出(yield)或边缘(frontier)
  • 分析树是推导的图形化表示。编译原理 —— CFG的分析树

句型的短语

  • 给定一个句型,其分析树中的每一棵子树的边缘称为该句型的一个短语(phrase)
  • 如果子树只有父子两代结点,那么这棵子树的边缘称为该句型的一个直接短语(immediate phrase)
    编译原理 —— CFG的分析树

举例:
编译原理 —— CFG的分析树

对于 “提高人民生活水平” 这一句子(不含非终结符的句型),提高、人民、生活、水平是直接短语,高人、民生、活水不是直接短语。


二义性文法

如果一个文法可以为某个句子生成多棵分析树,则称这个文法是二义性的。

举例:
编译原理 —— CFG的分析树

出现二义性时,计算机难以编译执行。因此,我们需要定义规则来消除歧义

对于任意一个上下文无关文法,不存在一个算法,判定它是无二义性的;但能给出一组充分条件,满足这组充分条件的文法是无二义性的

  • 满足,肯定无二义性
  • 不满足,也未必就是有二义性的

转载地址:

https://www.icourse163.org/learn/HIT-1002123007?tid=1003246005#/learn/announce

相关文章:

  • 2021-07-20
  • 2021-06-10
  • 2021-04-09
  • 2021-09-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-07-19
  • 2021-04-18
  • 2021-04-15
  • 2021-06-29
  • 2021-07-21
  • 2021-08-21
  • 2021-04-03
相关资源
相似解决方案