- 博客(1)
- 资源 (31)
- 收藏
- 关注
first &follow集合的解法,ll1分析法
很有用的,用c语言写的。first follow集合的求解~
求出所有文法符号的FIRST集合算法
1. 若X ∈ Vt,则FIRST(X)={X},
2. 若X ∈Vn,并且有产生式 X→a ,则a ∈ FIRST(X)
3. 若X ∈Vn, 且有产生式X→ε,则ε∈FIRST(X).
4. 若X ∈Vn, 且有产生式X→Y1Y2….Yn。当Y1,Y2,…..,Yi-1都 能推出ε, (1<=i<=n), 而Yi推不出ε,则FIRST(Y1)--{ε},FIRST(Y2)--{ε},……,FIRST(Yi-1)--{ ε}, FIRST(Yi) 都属于 FIRST(X)。
5. 当4中所有的 Yi都能推出ε,(i=1,2,….n),则
FIRST(X)=FIRST(Y1) ∪ FIRST(Y2) ∪…….∪ FIRST(Yn).
6. 反复使用以上5条规则,直到每个符号的FIRST集合不再增大为止。
2010-01-19
编译求first集合(C语言)
求出所有文法符号的FIRST集合算法
1. 若X ∈ Vt,则FIRST(X)={X},
2. 若X ∈Vn,并且有产生式 X→a ,则a ∈ FIRST(X)
3. 若X ∈Vn, 且有产生式X→ε,则ε∈FIRST(X).
4. 若X ∈Vn, 且有产生式X→Y1Y2….Yn。当Y1,Y2,…..,Yi-1都 能推出ε, (1<=i<=n), 而Yi推不出ε,则FIRST(Y1)--{ε},FIRST(Y2)--{ε},……,FIRST(Yi-1)--{ ε}, FIRST(Yi) 都属于 FIRST(X)。
5. 当4中所有的 Yi都能推出ε,(i=1,2,….n),则
FIRST(X)=FIRST(Y1) ∪ FIRST(Y2) ∪…….∪ FIRST(Yn).
6. 反复使用以上5条规则,直到每个符号的FIRST集合不再增大为止。
2010-01-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人