编译原理 -语法分析- 预测分析法

预测分析法
空串使用~代替
E’使用小写代替

E -> Te
e -> +Te|~
T -> Ft
t -> *Ft|~
F -> (E)|i|x|y

1.获取非终结符的first集和follow集
first集:
(1)终结符first集为中姐夫本身
(2)若X->a ,则a为X的first集
(3)若X->~, 则 ~ 属于Xfirst集
(4)若X->Y,则将first(Y)加入到first(X)中
(5)E->TE’,若 ~ 属于first(T),则将first(E’)添加至first(E)中

follow集:
(1)A->aB A->aBb (~ 属于 first(b)), 则将follow(A)添加至follow(B);
(2)E->TE’ (~ 属于 first(T)),则follow(E’)应包括follow(E);
(3)E -> TE’ (~属于 first(E’)),则follow(T)应包括follow(E);.
(4)文法开始符号应添加 #

2.编写程序获取产生式的first集和follow集

产生式firstfollow
E -> Te
e -> +Te
e -> ~
T -> Ft
t -> *Ft
t -> ~
F -> (E)
F -> i
F -> x
F -> y
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值