字典翻译 问答 其它 【编译原理中FIRSTVT和LASTVT如题E->E+T.T->T*F|F.F->(E)|id求FIRSTVT(T)答案是FIRSTVT(T)={*,(,id}但是我看FIRSTVT集合的定义是FIRSTVT(A)={blA=>b或A=>Bb.....,b属于终结符,B属于非终结符}这样的】
问题标题:
【编译原理中FIRSTVT和LASTVT如题E->E+T.T->T*F|F.F->(E)|id求FIRSTVT(T)答案是FIRSTVT(T)={*,(,id}但是我看FIRSTVT集合的定义是FIRSTVT(A)={blA=>b或A=>Bb.....,b属于终结符,B属于非终结符}这样的】
问题描述:

编译原理中FIRSTVT和LASTVT

如题E->E+T

.T->T*F|F

.F->(E)|id

求FIRSTVT(T)

答案是FIRSTVT(T)={*,(,id}

但是我看FIRSTVT集合的定义是

FIRSTVT(A)={blA=>b或A=>Bb.....,b属于终结符,B属于非终结符}

这样的话FIRSTVT(T)的答案不应该是

*,),id吗?书上给的答案是(,*,id

顾雷回答:
  1、FIRSTVT(T)=FIRSTVT(T*F)=*;   2、FIRSTVT(T)=FIRSTVT(F)   (1)FIRSTVT(F)=FIRSTVT((E))=(;   (2)FIRSTVT(F)=FIRSTVT(id)=id;   如此,FIRSTVT(T)={*,(,id}。
点击显示
其它推荐
热门其它推荐
  • 其它