編譯原理試卷及答案_第1頁(yè)
編譯原理試卷及答案_第2頁(yè)
編譯原理試卷及答案_第3頁(yè)
編譯原理試卷及答案_第4頁(yè)
編譯原理試卷及答案_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

裝訂線裝訂線內(nèi)不要答題學(xué)號(hào)姓名班級(jí)東北大學(xué)秦皇島分校裝訂線裝訂線內(nèi)不要答題學(xué)號(hào)姓名班級(jí)課程名稱:編譯原理試卷:(B)答案考試形式:閉卷授課專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)考試日期:年月日試卷:共2頁(yè)題號(hào)一二三四總分得分閱卷人填空題(每空2分,共30分)1、編譯程序的整個(gè)過程可以從邏輯上劃分為詞法分析、語(yǔ)法分析、語(yǔ)義分析、中間代碼生成、代碼優(yōu)化和目標(biāo)代碼生成等幾個(gè)階段,另外還有兩個(gè)重要的工作是理和出錯(cuò)處理。表格管2、規(guī)范規(guī)約中的可歸約串是句柄,算符優(yōu)先分析中的可歸約串是最左素短語(yǔ)。3、語(yǔ)法分析方法主要可分為自頂向下和自底向上兩大類。4、LR(0)文法的項(xiàng)目集中不會(huì)出現(xiàn)移進(jìn)-歸約沖突和歸約-歸約沖突。5、數(shù)據(jù)空間的動(dòng)態(tài)存儲(chǔ)分配方式可分為棧式和堆式兩種。6、編譯程序是指能將源語(yǔ)言程序翻譯成目標(biāo)語(yǔ)言程序的程序。7、確定有窮自動(dòng)機(jī)DFA是NFA的一個(gè)特例。8、表達(dá)式(a+b)*c的逆波蘭表示為ab+c*。選擇題(每題2分,共20分)1、LR語(yǔ)法分析棧中存放的狀態(tài)是識(shí)別B的DFA狀態(tài)。A、前綴B、可歸前綴C、項(xiàng)目D、句柄2、D不可能是目標(biāo)代碼。 A、匯編指令代碼B、可重定位指令代碼C、絕對(duì)機(jī)器指令代碼D、中間代碼3、一個(gè)控制流程圖就是具有C的有向圖A、唯一入口結(jié)點(diǎn)B、唯一出口結(jié)點(diǎn)C、唯一首結(jié)點(diǎn)D、唯一尾結(jié)點(diǎn)4、設(shè)有文法G[S]:S→b|bB B→bS ,則該文法所描述的語(yǔ)言是C。A、L(G)={bi|i≥0}B、L(G)={b2i|i≥0}C、L(G)={b2i+1|i≥0}D、L(G)={b2i+1|i≥1}5、把匯編語(yǔ)言程序翻譯成機(jī)器可執(zhí)行的目標(biāo)程序的工作是由B完成的。A、編譯器B、匯編器C、解釋器D、預(yù)處理器6、在目標(biāo)代碼生成階段,符號(hào)表用于D。A、目標(biāo)代碼生成B、語(yǔ)義檢查C、語(yǔ)法檢查D、預(yù)處理器地址分配07、規(guī)范歸約是指B。A、最左推導(dǎo)的逆過程B、最右推導(dǎo)的逆過程C、規(guī)范推導(dǎo)D、最左歸約逆過程8、使用A可以定義一個(gè)程序的意義。A、語(yǔ)義規(guī)則B、詞法規(guī)則C、語(yǔ)法規(guī)則D、左結(jié)合規(guī)則9、經(jīng)過編譯所得到的目標(biāo)程序是D。A、三元式序列B、四元式序列C、間接三元式D、機(jī)器語(yǔ)言程序或匯編語(yǔ)言程序10、在一個(gè)基本塊內(nèi)進(jìn)行的代碼優(yōu)化是B。A、全局優(yōu)化B、局部?jī)?yōu)化C、循環(huán)優(yōu)化D、代碼外提三、簡(jiǎn)答題(3小題,共30分)1、已知文法G[S]:S→Ac|aB A→abB→bc 證明該文法具有二義性(本題6分)證明:因?yàn)樵撐姆ǖ木湫蚢bc存在如下兩棵語(yǔ)法樹:所以,該文法具有二義性裝訂線裝訂線內(nèi)不要答題學(xué)號(hào)姓名班級(jí)3、若有文法G[S]:S→bAbA裝訂線裝訂線內(nèi)不要答題學(xué)號(hào)姓名班級(jí)解:4、構(gòu)造正規(guī)表達(dá)式(a|b)*b的DFA并化簡(jiǎn)。(14分)解:先構(gòu)造其NFA如下:確定化為DFA:將其最小化如下:四、綜合題(20分)設(shè)有文法G[S]:S→BA A→BS|d B→aA|bS|c證明文法G是LL(1)文法。構(gòu)造LL(1)分析表。寫出句子adccd的分析過程。解:(1)可見,文法G是是LL(1)文法。(2)(3)備注:學(xué)生不得在試題紙上答題(含填空題、選擇題等客觀題一、填空題(每空1分,共20分)1.編譯過程一般分為、、中間代碼生成、和目標(biāo)代碼生成五個(gè)階段。2.語(yǔ)法分析最常用的兩類方法是和分析法。3.確定的有窮自動(dòng)機(jī)是一個(gè),通常表示為。4.所謂最右推導(dǎo)是指。5.語(yǔ)法分析器的任務(wù)是。6.如果一個(gè)文法的任何產(chǎn)生式的右部都不含有的非終結(jié)符,則這種文法稱為文法。7.進(jìn)行確定的自上而下語(yǔ)法分析要求語(yǔ)言的文法是無(wú)和的。8.LR分析法是一種的語(yǔ)法分析方法。9.根據(jù)優(yōu)化對(duì)象所涉及的程序范圍,代碼優(yōu)化分為、和等。10.常用的優(yōu)化技術(shù)包括:、、強(qiáng)度削弱、復(fù)寫傳播、等。二、是非題(下列各題,你認(rèn)為正確的,請(qǐng)?jiān)陬}后的括號(hào)內(nèi)打“√”,錯(cuò)的打“×”。每題2分,共20分)1.正規(guī)文法產(chǎn)生的語(yǔ)言都可以用上下文無(wú)關(guān)文法來描述?!?)2.僅考慮一個(gè)基本塊,不能確定一個(gè)賦值是否真是無(wú)用的。………()3.如果一個(gè)文法是遞歸的,則其產(chǎn)生的語(yǔ)言的句子是無(wú)窮個(gè)。…()4.四元式之間的聯(lián)系是通過符號(hào)表實(shí)現(xiàn)的?!ǎ?.文法的二義性和語(yǔ)言的二義性是兩個(gè)不同的概念。…………()6.一個(gè)LL(l)文法一定是無(wú)二義的。………………()7.在規(guī)范規(guī)約中用最左素短語(yǔ)來刻劃可歸約串?!?)8.目標(biāo)代碼生成時(shí),應(yīng)考慮如何充分利用計(jì)算機(jī)的寄存器的問題?!?)9.編譯程序是對(duì)匯編程序的翻譯?!ǎ?0.逆波蘭法表示的表達(dá)式亦稱前綴式?!?)三、簡(jiǎn)答題(每題5分,共15分)1、簡(jiǎn)述棧式存儲(chǔ)管理策略;2、何謂DAG;3、何謂文法的二義性;四、給出下述文法對(duì)應(yīng)的正規(guī)式(7分)S→0A|1BA→1S|1B→0S|0五、已知文法G(E):E→T|E+T|E-TT→F|T*F|T/FF→(E)|i證明E+T*F是該文法的一個(gè)句型,并指出該句型的所有短語(yǔ)、直接短語(yǔ)和句柄。(8分)六、設(shè)有文法G[S]:SaBc|bABAaAb|bBb|ε構(gòu)造其LL(1)分析表,并分析符號(hào)串baabbb是否是該文法的句子.(10分)七、設(shè)有文法G[E]:E(E)|ε試判斷該文法是否為SLR(1)文法,若不是,請(qǐng)說明理由;若是請(qǐng)構(gòu)造SLR(1)分析表。(10分)八、假設(shè)可用寄存器為R0和R1,試寫出下列四元式序列對(duì)應(yīng)的目標(biāo)代碼。(10分)T1=B-CT2=A*T1T3=D+1T4=E-FT5=T3*T4參考答案一、填空題(1X20=20分)1.詞法分析、語(yǔ)法分析、代碼優(yōu)化2.自上而下、自下而上3.五元組、DFA=(K,∑,M,S,Z)4.任何一步都是對(duì)中最右非終結(jié)符進(jìn)行替換5.分析一個(gè)文法的句子結(jié)構(gòu)6.相鄰、算符7.左遞歸、公共左因子8.自下而上9.局部?jī)?yōu)化、循環(huán)優(yōu)化、局部?jī)?yōu)化10.刪除公共子表達(dá)式、代碼外提、變換循環(huán)控制條件、合并已知量、刪除無(wú)用賦值(任選3個(gè))二、是非題(2X10=20分)1、×2、√3、√4、×5、√6、√7、×8、√9、×10、×三、簡(jiǎn)答題(見書中相應(yīng)部分)(5X3=15分)四、解:首先得正規(guī)式方程組:S=0A+1BA=1S+1B=0S+0求解該方程組得:S=(01|10)(01|10)*(8分)五、解(2分)是文法G[S]的句型。短語(yǔ):E+T*F,T*F(2分)直接短語(yǔ):T*F(2分)句柄:T*F(2分)六、解:、因?yàn)镕OLLOW(B)=FIRST(c)∪FOLLOW(S)={c,#}(2分),所以構(gòu)造文法G[S]的LL(1)分析表(5)如下:aBc#SaBcbABAaAbbBbεε符號(hào)串baabbb是該文法的句子(3分)(分析過程略)。七(2分)所以該文法為SLR(1)文法。其分析表如下:(8分)狀態(tài)ACTIONGOTO()#E0S2r2r211acc2S2r2r233S44r1r1八、目標(biāo)代碼為:(10分)LDR0,BSUBR0,CLDR1,A

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論