请大家帮忙解决两个编译原理的问题,理解不是很清楚请大家给我讲讲。谢谢
1.一文法:
S->a|^|(T)
T->T,S|S
消去文法的左递归,然后对每个非终结符写出不带回溯的递归子程序。
我这样写的
里面只有T->T,S|S是具有左递归的,改为
S->a|^|(T)
T->ST'
T'->,ST|€
然后不知道什么是不带回溯的递归子程序,其实不明白的是递归子程序。
-------------------------------------------------------------------
2.文法
E->TE'
E'->+E|€
T->FT'
T'->T|€
F->PF'
F'->*F'|€
P->(E)|a|b|^
计算这个文法的每个非终结符的FIRST和FOLLOW。
对于FIRST和FOLLOW我的理解有点模糊,哪位可以给我讲一讲,能给出详细推导过程更好。谢谢。
T->