📜  自上而下解析器的分类

📅  最后修改于: 2021-06-28 07:45:51             🧑  作者: Mango

解析分为两类,即自上而下的解析和自下而上的解析。自上而下的解析基于最左派生,而自下而上的解析则取决于反向最右派生。

从根开始到叶子的解析树的构建过程是Top-Down解析。

  • 语法自上而下的自上而下解析器构造没有歧义和左递归。
  • 自上而下的解析器使用最左端的派生来构造解析树。
  • 它允许没有左因子分解的语法。

自上而下解析的分类–

  1. 回溯:蛮力技术
  2. 没有回溯: 1.递归下降解析
    2.预测解析或非递归解析或LL(1)解析或表驱动程序解析

蛮力技术或递归下降解析–

  1. 每当非终端支出第一次时,就选择第一个,并与给定的I / P字符串进行比较
  2. 如果没有发生匹配,则选择第二种方法,并与给定的I / P字符串进行比较。
  3. 如果再次找不到匹配项,则选择替代项,依此类推。
  4. 此外,如果至少发生了一种匹配,那么将成功解析I / P字符串。

LL(1)或表驱动程序或预测解析器–

  1. 在LL1中,第一个L代表从左到右,第二个L代表最左导数。 1代表解析器在分析句子时使用的“向前看”令牌的数量。
  2. LL(1)解析是从没有左递归,通用前缀和歧义的语法构建的。
  3. LL(1)解析器依靠1个前瞻符号来预测扩展解析树的产生。
  4. 该解析器是非递归的。