什么是预测解析器?

Predictive Parser 也是另一种实现无回溯的自顶向下解析技术的方法。预测解析器是一种通过管理激活记录堆栈来执行递归下降解析的有效技术。

预测解析器具有以下组件 -

  • Input Buffer - 输入缓冲区包括要解析的字符串,后跟结束标记 $表示字符串的结尾。

这里 a、+、b 是终端符号。

  • Stack - 它包含语法符号和堆栈底部的 $组合。在 Parsing 开始时,堆栈包含 Grammar 的开始符号,后跟 $。

  • Parsing Table - 它是一个二维数组或矩阵 M [A, a],其中 A 是非终结符,'a' 是终结符。

所有终端都按列写入,所有非终端都按行写入。

  • Parsing Program - 解析程序通过比较堆栈顶部的符号和要在输入缓冲区上读取的当前输入符号来执行一些操作。

  • Actions - 解析程序根据堆栈顶部的符号和当前输入符号采取各种操作。采取的各种行动如下 -

构建预测解析表的算法

输入- 上下文无关语法 G

输出- 预测解析表 M

方法- 对于语法 G 的产生式 A → α。

  • 对于每个终端,一个在 FIRST (

以上是 什么是预测解析器? 的全部内容, 来源链接: utcz.com/z/363367.html

回到顶部