資源描述:
《中醫(yī)養(yǎng)生與冬季保健》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、溫故知新上下文無關(guān)文法自上而下自下而上LL(1)文法2個函數(shù)遞歸下降預(yù)測分析非遞歸的預(yù)測分析最左推導(dǎo)最右推導(dǎo)!LR文法輸入LR分析程序輸出棧LR分析器的模型actiongotosmXmsm-1Xm-1…s0…a1ai…an$移進(jìn)-規(guī)約分析規(guī)約移進(jìn)-規(guī)約沖突規(guī)約-規(guī)約沖突句柄活前綴右句型的前綴,該前綴不超過最右句柄的右端1。句柄與某個產(chǎn)生式的右部符號串相同2。句柄是句型的一個子串3。把句柄歸約成非終結(jié)符代表了最右推導(dǎo)逆過程的一步簡單的LR方法(SLR)規(guī)范的LR方法向前看的LR方法(LALR)1/413.5LR分析器3.5.3構(gòu)造SLR分析表LR(0)項目(簡稱項目)在右部的某個地方加
2、點的產(chǎn)生式例:A?XYZ對應(yīng)有四個項目A?·XYZA?X·YZA?XY·ZA?XYZ·例:A??只有一個項目和它對應(yīng)A?·點的左邊代表歷史信息,右邊代表展望信息。直觀地講,項目表示在分析過程的某一階段,已經(jīng)看到了產(chǎn)生式的多大部分,以及希望看到的部分。3.5LR分析器構(gòu)造SLR分析表的兩大步驟利用文法來構(gòu)造一個能夠識別活前綴的DFA從上述DFA構(gòu)造分析表3.5LR分析器從文法構(gòu)造識別活前綴的DFA1.拓廣文法E??EE?E+T
3、TT?T*F
4、FF?(E)
5、id當(dāng)且僅當(dāng)分析器使用E??E規(guī)約時,宣告分析成功E?rmE+T?rmE+F?rmE+id?rmT+id?rmF+id?rmid+i
6、did+idF+idT+idE+idE+FE+TE3.5LR分析器從文法構(gòu)造識別活前綴的DFA2.構(gòu)造LR(0)項目集規(guī)范族I0:E??·E5/41閉包函數(shù)closure(I)1、I的每個項目均加入closure(I)2、如果A?α·Bβ在closure(I)中,且B?γ是產(chǎn)生式,那么如果項目B?·γ還不在closure(I)中的話,那么把它加入。E??EE?E+T
7、TT?T*F
8、FF?(E)
9、idE?·E+TE?·TT?·T*FT?·FF?·(E)F?·id3.5LR分析器從文法構(gòu)造識別活前綴的DFA2.構(gòu)造LR(0)項目集規(guī)范族I0:E??·E(核心項目)E?·E+TE?·T(非
10、核心項目,T?·T*F通過對核心項目求閉包T?·F而獲得)F?·(E)F?·idE’?·E及所有的點不在產(chǎn)生式右部的左端的項目E??EE?E+T
11、TT?T*F
12、FF?(E)
13、id3.5LR分析器從文法構(gòu)造識別活前綴的DFA2.構(gòu)造LR(0)項目集規(guī)范族I0:I1:E??·EE??E·E?·E+TE?E·+TE?·TT?·T*FT?·FF?·(E)F?·idE??EE?E+T
14、TT?T*F
15、FF?(E)
16、id3.5LR分析器從文法構(gòu)造識別活前綴的DFA2.構(gòu)造LR(0)項目集規(guī)范族I0:I1:E??·EE??E·E?·E+TE?E·+TE?·TT?·T*FI1:=goto(I0,E)T
17、?·FF?·(E)F?·idE??EE?E+T
18、TT?T*F
19、FF?(E)
20、id3.5LR分析器從文法構(gòu)造識別活前綴的DFA2.構(gòu)造LR(0)項目集規(guī)范族I0:I1:E??·EE??E·E?·E+TE?E·+TE?·TT?·T*FI2:T?·FE?T·F?·(E)T?T·*FF?·idE??EE?E+T
21、TT?T*F
22、FF?(E)
23、id3.5LR分析器從文法構(gòu)造識別活前綴的DFA2.構(gòu)造LR(0)項目集規(guī)范族I0:I1:E??·EE??E·E?·E+TE?E·+TE?·TT?·T*FI2:T?·FE?T·F?·(E)T?T·*FF?·idI3:T?F·E??EE?E+T
24、TT?T*F
25、
26、FF?(E)
27、id10/413.5LR分析器I0:I4:E??·EF?(·E)E?·E+TE?·E+TE?·TE?·TT?·T*FT?·T*FT?·FT?·FF?·(E)F?·(E)F?·idF?·idE??EE?E+T
28、TT?T*F
29、FF?(E)
30、id3.5LR分析器I0:I4:E??·EF?(·E)E?·E+TE?·E+TE?·TE?·TT?·T*FT?·T*FT?·FT?·FF?·(E)F?·(E)F?·idF?·idI5:F?id·E??EE?E+T
31、TT?T*F
32、FF?(E)
33、id3.5LR分析器I1I0EI3I2I4I5TF(id3.5LR分析器I1I0EI3I2I4I
34、5TF(idI1:E??E·E?E·+TE??EE?E+T
35、TT?T*F
36、FF?(E)
37、id3.5LR分析器I1I0EI3I2I4I5TF(idI1:E??E·E?E·+TI6:E?E+·TT?·T*FT?·FF?·(E)F?·idE??EE?E+T
38、TT?T*F
39、FF?(E)
40、id15/413.5LR分析器I1I0EI3I2I4I5TF(idI2:E?T·T?T·*FI7:T?T*·FF?·(E)F?·idE??EE?E+T
41、TT?T*F
42、FF?(E)
43、