编译原理 期末考试 复习题 答案
共七道大题与一道附加题
2. (8分)试消除下列文法中的左递归。 S → SaA|Se|B A → BbA|B B → cSd|
解:
消除左递归 提取左因子 改写后的文法
S → SaA|Se|B A → BbA | B S → BS’
→ S(aA | e )| B → B ( bA | ) S’ → aA S’ | e S’ |
引进非终结符S’ 引进非终结符A’ A →B A’
S → BS’ A →B A’ A’ → bA |
S’→(aA | e )S’ | A’ → bA | B → cSd|
1