編譯原理【4】文法轉換(消除左遞歸)

並不是所有文法都適合自頂向下分析,下面列舉兩個自頂向下分析中遇到的問題: 1.同一非終結符的多個候選式前綴相同時,會導致回溯現象從而效率低下。 爲什麼要消除左遞歸? 如果是類似於 A → A α A\rightarrow A\alpha A→Aα的左遞歸文法,由於對當前句型的分析按照最左推導執行,因此將會使得遞歸下降分析器陷入無限循環。故需要消除。(參考下圖,最後會生成以A開頭,後面跟着無限個α的
相關文章
相關標籤/搜索