用一門面向?qū)ο笳Z(yǔ)言建立一個(gè)針對(duì)LL(1)文法分析構(gòu)造演示器,輸入定義好的文法,進(jìn)行分析后在內(nèi)存中建立其存儲(chǔ)結(jié)構(gòu),判斷其能用LL(1)文法分析后,建立其分析過(guò)程。
為此我們將本任務(wù)分解為以下內(nèi)容:
(1)文法的建立;
(2)上下文無(wú)關(guān)文法的判定;
(3)消除文法中一切左遞歸的算法;
(4)文法二義性的判定;
(5)LL(1)文法的判定;
(6)消除直接左遞歸;
(7)消除間接左遞歸;
(8)直接左公因子的改造;
(9)間接左公因子的改造;
(10)遞歸子程序的構(gòu)造;
(11)根據(jù)布爾矩陣求Follow集;
(12)能導(dǎo)出ε的非終結(jié)符;
(13)根據(jù)定義構(gòu)造First集;
(14)根據(jù)關(guān)系圖構(gòu)造First集;
(15)根據(jù)定義構(gòu)造Follow集;
(16)根據(jù)關(guān)系圖構(gòu)造Follow集;
(17)Select集的構(gòu)造;
(18)預(yù)測(cè)分析表的構(gòu)造;
(19)總控程序的構(gòu)造;
(20)語(yǔ)法樹(shù)的演示;
(21)根據(jù)總控程序輸出語(yǔ)法樹(shù);
(22)根據(jù)布爾矩陣求First集。
我所要完成的任務(wù)是 語(yǔ)法樹(shù)的演示。
標(biāo)簽:
LL
對(duì)象
分
語(yǔ)言
上傳時(shí)間:
2016-07-30
上傳用戶:kelimu