找到以下语法的 FIRST & FOLLOW E → E + T|T T → T ∗ F|F F → (E)|id

解决方案

FIRST 的计算

  • E → E + T|T

由于 FIRST (E) 不包含 ε。

∴ 第一 (E) = 第一 (E + T) = FIRST(E)

作为,E → T

∴第一 (E) = { FIRST(T)} (1)

  • T → T ∗ F|F

由于FIRST (T) 不包含ε 或T 不导出ε。

∴ FIRST (T) = FIRST(T ∗ F) = { FIRST(T)}

作为,T → F ( FIRST(T)= { FIRST(F)} (2)

  • F → (E)|id

∴根据FIRST的规则(3)

第一 (F) = {(, id} (3)

来自 (1), (2) & (3)

第一 (F) = {(, id} (3)

第一 (T) = { FIRST(F)} (2)

第一 (E) = { FIRST(T)} (1)

∴ 第一 (E) = FIRST(T)= FIRST(F)= {(, id}

FOLLOW的计算

E → E + T|T

T → T ∗ F|F

F → (E) |id

应用规则 (1) 跟随 (E) = {$} (1)

以上是 找到以下语法的 FIRST & FOLLOW E → E + T|T T → T ∗ F|F F → (E)|id 的全部内容, 来源链接: utcz.com/z/317253.html

回到顶部