针对于每一个产生式进行一个函数分析
程序(E) -> begin(g) 语句串(T) end(e) #(O)
T -> 语句{;语句(X)}
X -> 赋值语句(F)
F -> ID(d) :=(m) 表达式(B)
B -> 项+项 | 项-项(C)
C -> 因子(Y)*因子 | 因子 / 因子
Y -> d | NUM(n) | B
E -> gTe#
T -> X |X;T
X -> F
F -> dmB
B -> C | C+B | C-B
C -> Y | Y*C | Y/C
Y -> d | n | B
- 关于递归分析 ,Y->B中会出现见解左递归
- 关于 ;X循环问题以及表达式a+bc/d类似分析 开始的时候我是将T->X;X但是这样会出现多个运算,不符合文法的范围。 改成了T -> X | X;T以后就可以运行。同理下面的+-/都是相同的修改的方法
一共有七个非终结符,所有一共有七个函数 E() T() X() F() B() C() Y()
字符串的分析问题: