在 CFG 中查找第一个非终端

Finding FIRST of non-terminals in a CFG

提问人:Razi Ullah 提问时间:11/12/2023 更新时间:11/12/2023 访问量:19

问:

计算 S、A 和 B 的 FIRST 和 FOLLOW:

    S -> Aa | Bb
    A -> Sc | epsilon
    B -> Sd | epsilon

注意:S、A 和 B 是非终端

当我试图找到 FIRST(S) 时,它指向找到 FIRST(A) 和 FIRST(B),这反过来又指向寻找 FIRST(S)。如何解决这个问题?

解析 编译器构造 上下文无关语法

评论

0赞 Razi Ullah 11/12/2023
我试图对给定的语法进行 LL(1) 解析,然后制作一个解析表,为此我必须找到 FIRST 和 FOLLOW。但是我陷入了试图找到第一个的循环中,却不知道如何缓解这个问题。
0赞 user207421 11/12/2023
@TheCoolDrop 这些是编译器构造中的基本术语。对于那些了解该主题的人来说,这个问题非常清楚。
0赞 Razi Ullah 11/12/2023
我学了一点,知道了自己的无知,对于给您带来的不便,我深表歉意

答: 暂无答案