編譯原理復(fù)習(xí) (2).doc

編譯原理復(fù)習(xí) (2).doc

ID:56250218

大小:146.00 KB

頁(yè)數(shù):6頁(yè)

時(shí)間:2020-03-25

編譯原理復(fù)習(xí) (2).doc_第1頁(yè)
編譯原理復(fù)習(xí) (2).doc_第2頁(yè)
編譯原理復(fù)習(xí) (2).doc_第3頁(yè)
編譯原理復(fù)習(xí) (2).doc_第4頁(yè)
編譯原理復(fù)習(xí) (2).doc_第5頁(yè)
資源描述:

《編譯原理復(fù)習(xí) (2).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)

1、1.合并LR(1)同心集后有可能產(chǎn)生歸約歸約沖突對(duì)2.一個(gè)基本塊不能確定一個(gè)賦值是否真的有用對(duì)3每一個(gè)文法都能改寫成LL(1)文法錯(cuò)4.編譯程序與具體的機(jī)器有關(guān),也與具體的語(yǔ)言有關(guān)對(duì)5.一個(gè)語(yǔ)言的文法是唯一的錯(cuò)6.過(guò)程與過(guò)程調(diào)用中,信息交換的方法是全局變量的使用和參數(shù)傳遞對(duì)7.在編譯程序中,安排中間代碼生成的目的是便于代碼優(yōu)化和便于目標(biāo)程序的移植對(duì)8.編譯中的語(yǔ)義處理是指兩個(gè)功能即審查每一個(gè)語(yǔ)法結(jié)構(gòu)的靜態(tài)語(yǔ)義和執(zhí)行真正的翻譯對(duì)9.程序基本塊是指一組順序執(zhí)行的程序段,僅有一個(gè)入口和一個(gè)出口錯(cuò)10.存在這樣的一些語(yǔ)言他們能夠被確定的

2、有限自動(dòng)機(jī)識(shí)別,但是不能用正規(guī)式表示。錯(cuò)二、填空題:11.要在某一臺(tái)機(jī)器上為某一種語(yǔ)言構(gòu)造一個(gè)編譯程序,必須掌握機(jī)器指令、語(yǔ)言文法、(操作系統(tǒng))三方面內(nèi)容。12.設(shè)G是一個(gè)給定的文法,S是文法開(kāi)始符號(hào),如果S—>X,那么X是文法G的句子。(X是終結(jié)符串)13.在一個(gè)典型的編譯過(guò)程中,不僅包括詞法分析、語(yǔ)法分析、中間代碼生成、代碼優(yōu)化、目標(biāo)代碼生成等5個(gè)部分,還包括出錯(cuò)處理程序和表格處理程序,其中,詞法分析器用于識(shí)別單詞符號(hào),語(yǔ)法分析器用來(lái)發(fā)現(xiàn)源程序中的語(yǔ)法結(jié)構(gòu)。編譯方式與解釋方式的根本區(qū)別是是否需要整體考慮,遞歸下降子程序分析法

3、是自上向下的分析法。14.語(yǔ)法分析的任務(wù)是識(shí)別給定的終結(jié)符串是否為給定文法的句子。15.語(yǔ)法分析最常用的兩類方法是自上而下和自下而上分析方法,16.在有限自動(dòng)機(jī)中,兩個(gè)狀態(tài)等價(jià)一致性條件蔓延性條件。17.LR分析法中,每個(gè)項(xiàng)目的含義與原點(diǎn)的位置有關(guān),概括的說(shuō),原點(diǎn)的左部表示已識(shí)別的句柄部分,原點(diǎn)的右部表示期待的后綴部分。18.在構(gòu)造LR項(xiàng)目集規(guī)范族時(shí),新項(xiàng)目集是組成的,合并LR(1)項(xiàng)目集規(guī)范族的同心集所產(chǎn)生的沖突一定是歸約沖突。19.語(yǔ)法制導(dǎo)翻譯比較接近于形式化,它用屬性文法工具來(lái)表達(dá)程序設(shè)計(jì)語(yǔ)言的語(yǔ)義,每個(gè)產(chǎn)生式對(duì)應(yīng)的都給它

4、配上語(yǔ)義動(dòng)作來(lái)進(jìn)行翻譯用。已知文法G[S]:S→MH

5、aH→LSo

6、εK→dML

7、εL→eHfM→K

8、bLM判斷G是否是LL(1)文法,如果是,構(gòu)造LL(1)分析表。答案:文法展開(kāi)為:0)S→MH1)S→a2)H→LSo3)H→ε4)K→dML5)K→ε6)L→eHf7)M→K8)M→bLM非終結(jié)符FIRST集FOLLOW集S{a,d,b,ε,e}{#,o}........M{d,ε,b}....{e,#,o}......H{ε,e}.....{#,f,o}......L{e}......{a,d,b,e,o,#}K{d,ε}.

9、.....{e,#,o}......對(duì)相同左部的產(chǎn)生式可知:SELECT(S→MH)∩SELECT(S→a)={d,b,e,#,o}∩{a}=空SELECT(H→LSo)∩SELECT(H→ε)={e}∩{#,f,o}=空SELECT(K→dML)∩SELECT(K→ε)=kkck062∩{e,#,o}=空SELECT(M→K)∩SELECT(M→bLM)={d,e,#,o}∩=空所以文法是LL(1)的。預(yù)測(cè)分析表:aodefb#S→a→MH→MH→MH→MH→MHM→K→K→K→bLM→KH→ε→LSo→ε→εL→eHfK→ε→

10、dML→ε→ε由預(yù)測(cè)分析表中無(wú)多重入口也可判定文法是LL(1)的。題2中當(dāng)程序編譯到r的過(guò)程體時(shí)的名字表table的內(nèi)容為:Namekindlevel/valadrsizexvariable0dxyvariable0dx+1pprocedure0過(guò)程p的入口(待填)5avariable1dxqprocedure1過(guò)程q的入口4sprocedure1過(guò)程s的入口(待填)5cvariable2dxdvariable2dxrprocedure2過(guò)程r的入口5evariable3dxfvariable3dx+1構(gòu)造下列正規(guī)式相應(yīng)的DFA

11、.1(0

12、1) *101(1)先構(gòu)造NFA:用子集法將NFA確定化.01X.AAAABABACABACAABYABYACAB除X,A外,重新命名其他狀態(tài),令A(yù)B為B、AC為C、ABY為D,因?yàn)镈含有Y(NFA的終態(tài)),所以D為終態(tài)。.01X.AAABBCBCADDCBDFA的狀態(tài)圖::給出下述文法所對(duì)應(yīng)的正規(guī)式:S→0A

13、1BA→1S

14、1B→0S

15、0答案:解方程組S的解:S=0A

16、1BA=1S

17、1B=0S

18、0將A、B產(chǎn)生式的右部代入S中S=01S

19、01

20、10S

21、10=(01

22、10)S

23、(01

24、10)所以:S=(01

25、10)*(0

26、1

27、10)證明文法:S→A$A→BaBb

28、DbDaB→εD→ε是LR(1)但不是SLR(1)。(其中'$'相當(dāng)于'#')答案:文法:A→BaBb

29、DbDaB→εD→ε拓廣文法為G′,增加產(chǎn)生式S′→A若產(chǎn)生式排序?yàn)椋?S'→A1A→BaBb2A→DbDa3B→ε

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。