版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
編譯原理經(jīng)典習(xí)題詳解(1)計(jì)算文法G[S]各非終結(jié)符的First集和Follow集。(2)判斷該文法是否為L(zhǎng)L(1)文法。(3)若為L(zhǎng)L(1)文法,構(gòu)造其預(yù)測(cè)分析表。分析與解答:(1)計(jì)算First集和Follow集:First集定義:First(X)是由所有從X推導(dǎo)出的句型的第一個(gè)終結(jié)符組成的集合,若X能推導(dǎo)出ε,則ε也在First(X)中。Follow集定義:Follow(A)是由所有在句型中緊跟在A之后的終結(jié)符組成的集合,若A是句型的最右符號(hào),則#(句子結(jié)束符)也在Follow(A)中。首先,我們列出所有非終結(jié)符:S,A,B。終結(jié)符:a,b。計(jì)算First集:*First(S):S有兩個(gè)產(chǎn)生式:S→aAb和S→bBA。第一個(gè)產(chǎn)生式以終結(jié)符a開頭,所以a∈First(S)。第二個(gè)產(chǎn)生式以終結(jié)符b開頭,所以b∈First(S)。因此,F(xiàn)irst(S)={a,b}。*First(A):A有三個(gè)產(chǎn)生式:A→ab,A→a,A→ε。A→ab:以a開頭,a∈First(A)。A→a:以a開頭,a∈First(A)。A→ε:ε∈First(A)。因此,F(xiàn)irst(A)={a,ε}。*First(B):B有兩個(gè)產(chǎn)生式:B→a,B→ε。B→a:以a開頭,a∈First(B)。B→ε:ε∈First(B)。因此,F(xiàn)irst(B)={a,ε}。計(jì)算Follow集:首先,令Follow(S)={#}(因?yàn)镾是開始符號(hào))。*Follow(A):尋找所有包含A的產(chǎn)生式右部,并查看A之后的符號(hào)。1.S→aAb:A后面是終結(jié)符b。所以b∈Follow(A)。2.A→ab:A是產(chǎn)生式左部,看右部末尾,無(wú)后續(xù)符號(hào),故需將Follow(A)的計(jì)算依賴于其左部非終結(jié)符的Follow集?不,這里A是產(chǎn)生式左部,對(duì)于A的產(chǎn)生式右部的末尾符號(hào)b,它會(huì)影響使用該A產(chǎn)生式的上下文。但計(jì)算Follow(A)本身,是看A在其他產(chǎn)生式中作為右部符號(hào)時(shí),其后的符號(hào)。3.A→a:同上。4.A→ε:同上。另,A在S→aAb中是作為右部中間符號(hào)出現(xiàn)的,其后是b,已考慮。A是否在其他產(chǎn)生式中出現(xiàn)?沒有了。所以,F(xiàn)ollow(A)=。*Follow(B):尋找所有包含B的產(chǎn)生式右部,并查看B之后的符號(hào)。B出現(xiàn)在S→bBA中,B后面是A。所以,F(xiàn)irst(A)中除ε外的元素都屬于Follow(B)。First(A)={a,ε},所以a∈Follow(B)。由于First(A)包含ε,所以還需要將Follow(S)加入Follow(B)。因?yàn)楫?dāng)A推導(dǎo)出ε時(shí),B后面緊跟著的就是S的Follow符號(hào)。Follow(S)={#},所以#∈Follow(B)。因此,F(xiàn)ollow(B)={a,#}。*再次檢查Follow(A)和Follow(B)是否有遺漏:對(duì)于A,是否還有其他產(chǎn)生式?沒有。所以Follow(A)=正確。對(duì)于B,是否還有其他產(chǎn)生式?沒有。所以Follow(B)={a,#}正確??偨Y(jié):*First(S)={a,b}*First(A)={a,ε}*First(B)={a,ε}*Follow(S)={#}*Follow(A)=*Follow(B)={a,#}(2)判斷該文法是否為L(zhǎng)L(1)文法:LL(1)文法的定義:對(duì)于文法中的任意兩個(gè)產(chǎn)生式A→α和A→β(α≠β),必須滿足:1.First(α)∩First(β)=?。2.若β能推導(dǎo)出ε(即ε∈First(β)),則First(α)∩Follow(A)=?;對(duì)稱地,若α能推導(dǎo)出ε,則First(β)∩Follow(A)=?。我們需要對(duì)文法中每個(gè)非終結(jié)符的所有產(chǎn)生式對(duì)進(jìn)行檢查。*檢查非終結(jié)符S:S有兩個(gè)產(chǎn)生式:S→aAb和S→bBA。First(aAb)={a},F(xiàn)irst(bBA)=。{a}∩=?。滿足條件1。無(wú)需檢查條件2(因?yàn)閮蓚€(gè)產(chǎn)生式的右部都不能推導(dǎo)出ε,其First集中不含ε)。*檢查非終結(jié)符A:A有三個(gè)產(chǎn)生式:A→ab,A→a,A→ε。需要兩兩檢查:a)A→ab和A→a:First(ab)={a},F(xiàn)irst(a)={a}。{a}∩{a}={a}≠?。僅此一對(duì)產(chǎn)生式就不滿足LL(1)文法的條件
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 吉水縣城控人力資源服務(wù)有限公司2026年面向社會(huì)公開招聘勞務(wù)派遣工作人員 至吉水縣審計(jì)局備考考試試題附答案解析
- 2026中國(guó)人民大學(xué)綜合服務(wù)中心招聘2人備考考試試題附答案解析
- 2026年上半年云南民族大學(xué)招聘碩士人員(7人)備考考試試題附答案解析
- 2026山東事業(yè)單位統(tǒng)考臨沂市沂南縣招聘綜合類崗位人員28人參考考試試題附答案解析
- 人社局安全生產(chǎn)責(zé)任制度
- 2026云南中鋁數(shù)為(成都)科技有限責(zé)任公司社會(huì)招聘8人備考考試試題附答案解析
- 2026湖南長(zhǎng)沙市天心區(qū)面向全國(guó)公開引進(jìn)選拔生31人備考考試題庫(kù)附答案解析
- 2026浙江興??毓杉瘓F(tuán)有限公司下屬企業(yè)招聘3人備考考試題庫(kù)附答案解析
- 如何搭建“三段九級(jí)”任職資格體系?-華恒智信助力某石油石化研究院技術(shù)人才評(píng)價(jià)與培養(yǎng)實(shí)例
- 2025年輔警招聘考試試題庫(kù)附答案詳解
- 2025-2030半導(dǎo)體缺陷檢測(cè)設(shè)備行業(yè)運(yùn)營(yíng)模式與供需趨勢(shì)預(yù)測(cè)研究報(bào)告
- GB/T 46755-2025智能紡織產(chǎn)品通用技術(shù)要求
- 2026年湖南國(guó)防工業(yè)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能考試題庫(kù)附答案
- 2026年殘疾人聯(lián)合會(huì)就業(yè)服務(wù)崗招聘筆試適配題含答案
- 國(guó)家電網(wǎng)公司招聘高校畢業(yè)生應(yīng)聘登記表
- 見證取樣手冊(cè)(智能建筑分部)
- DZ∕T 0353-2020 地球化學(xué)詳查規(guī)范(正式版)
- 醫(yī)療衛(wèi)生輿情課件
- 2023-2024學(xué)年宜賓市高一數(shù)學(xué)上學(xué)期期末質(zhì)量監(jiān)測(cè)試卷附答案解析
- 實(shí)用的標(biāo)準(zhǔn)氧化還原電位表
- 英語(yǔ)口語(yǔ)8000句(情景模式)
評(píng)論
0/150
提交評(píng)論