LL(1) 文法预测分析表算法详解
预测分析表是一种用于 LL(1) 文法的语法分析方法。其算法描述如下:
-
构造 LL(1) 文法的 FIRST 集和 FOLLOW 集。
-
根据 FIRST 集和 FOLLOW 集构造预测分析表。预测分析表的行表示文法的非终结符,列表示文法的终结符和 '$$'。预测分析表中的每个单元格填写的是一个产生式,表示该非终结符在某个输入符号下应该使用的产生式。
-
使用预测分析表进行语法分析。对于输入符号串,从左到右扫描,每次读入一个符号。根据预测分析表中对应的单元格获取产生式,并将产生式右部中的非终结符替换为对应的产生式。直到产生式右部为 '$$' 或者无法找到对应的产生式为止。
-
如果最终得到的符号串和输入符号串相同,则输入符号串符合该文法。否则,输入符号串不符合该文法。
原文地址: https://www.cveoy.top/t/topic/oy07 著作权归作者所有。请勿转载和采集!