求文法 E->TG G->+TG G->ξ T->FS S->*FS S->ξ F->(E) F->i 的预测分析表
时间: 2023-08-06 11:08:32 浏览: 244
预测分析表
5星 · 资源好评率100%
首先我们需要求出该文法的 FIRST 集和 FOLLOW 集:
- FIRST(E) = { (, i }
- FIRST(G) = { +, ε }
- FIRST(T) = { (, i }
- FIRST(S) = { *, ε }
- FIRST(F) = { (, i }
- FOLLOW(E) = { $, ) }
- FOLLOW(G) = { $, ) }
- FOLLOW(T) = { +, $, ) }
- FOLLOW(S) = { +, $, ) }
- FOLLOW(F) = { *, +, $, ) }
其中,ε 表示空串。
根据 FIRST 和 FOLLOW 集,我们可以得到该文法的预测分析表如下:
| | ( | ) | + | * | i | $ |
|---|---|---|---|---|---|---|
| E | E -> TG | | | | E -> TG | |
| G | | G -> ε | G -> +TG | | G -> ε | G -> ε |
| T | T -> FS | | | | T -> FS | |
| S | | S -> ε | S -> ε | S -> *FS | S -> ε | S -> ε |
| F | F -> (E) | | | | F -> i | |
表中,行对应非终结符,列对应终结符,表格中的内容表示使用该产生式进行推导的结果。例如,当栈顶为 E,当前输入符号为 i 时,使用 E -> TG 进行推导。
阅读全文