編譯原理試卷及答案_第1頁(yè)
編譯原理試卷及答案_第2頁(yè)
編譯原理試卷及答案_第3頁(yè)
編譯原理試卷及答案_第4頁(yè)
編譯原理試卷及答案_第5頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、裝 訂 線裝 訂 線 內(nèi) 不 要 答 題學(xué) 號(hào)姓 名班 級(jí)東 北 大 學(xué) 秦 皇 島 分 校課程名稱: 編譯原理 試卷: (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

2、、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、

3、唯一出口結(jié)點(diǎn) C、唯一首結(jié)點(diǎn) D、唯一尾結(jié)點(diǎn)4、設(shè)有文法GS:Sb|bBBbS,則該文法所描述的語(yǔ)言是 C 。A、L(G)=bi|i0 B、L(G)=b2i|i0 C、L(G)=b2i+1|i0 D、L(G)=b2i+1|i15、把匯編語(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ī)

4、則 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、已知文法GS:SAc|aBAab Bbc證明該文法具有二義性(本題6分)證明:因?yàn)樵撐姆ǖ木湫蚢bc存在如下兩棵語(yǔ)法樹:所以,該文法具有二義性裝 訂 線裝 訂 線 內(nèi) 不 要 答 題學(xué) 號(hào)姓 名班 級(jí)3、若有文法GS:SbAb A(B|a BAa)。構(gòu)造該文法的簡(jiǎn)單優(yōu)先關(guān)系矩陣。(10分)解:4、構(gòu)造正規(guī)

5、表達(dá)式(a|b)* b的DFA并化簡(jiǎn)。(14分)解:先構(gòu)造其NFA如下:確定化為DFA: 將其最小化如下:四、綜合題(20分)設(shè)有文法GS:SBAABS|dBaA|bS|c(1) 證明文法G是LL(1)文法。(2) 構(gòu)造LL(1)分析表。(3) 寫出句子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ǔ)

6、法分析器的任務(wù)是 。6如果一個(gè)文法的任何產(chǎn)生式的右部都不含有 的非終結(jié)符,則這種文法稱為 文法。7進(jìn)行確定的自上而下語(yǔ)法分析要求語(yǔ)言的文法是無 和 的。8LR分析法是一種 的語(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ǔ)言都可以用上下文無關(guān)文法來描述。 ( )2僅考慮一個(gè)基本塊,不能確定一個(gè)賦值是否真是無用的。( )3如果一個(gè)文法是遞歸的,則其產(chǎn)生的語(yǔ)言的句子是無窮個(gè)。 ( )4四元式之間的聯(lián)系是

7、通過符號(hào)表實(shí)現(xiàn)的。( )5文法的二義性和語(yǔ)言的二義性是兩個(gè)不同的概念。 ( )6一個(gè)LL( l)文法一定是無二義的。 ( )7在規(guī)范規(guī)約中用最左素短語(yǔ)來刻劃可歸約串。 ( )8目標(biāo)代碼生成時(shí),應(yīng)考慮如何充分利用計(jì)算機(jī)的寄存器的問題。 ( )9編譯程序是對(duì)匯編程序的翻譯。 ( )10逆波蘭法表示的表達(dá)式亦稱前綴式。 ( ) 三、 簡(jiǎn)答題(每題5分,共15分)1、簡(jiǎn)述棧式存儲(chǔ)管理策略; 2、何謂DAG; 3、何謂文法的二義性;四、 給出下述文法對(duì)應(yīng)的正規(guī)式 (7分) S 0A| 1BA1S | 1B0S | 0 五、 已知文法G(E):ET | E+T | E-TTF | T*F | T/FF(E

8、) | i證明E+T*F是該文法的一個(gè)句型,并指出該句型的所有短語(yǔ)、直接短語(yǔ)和句柄。(8分) 六、 設(shè)有文法GS:SaBc|bABAaAb|bBb|構(gòu)造其LL(1)分析表,并分析符號(hào)串baabbb是否是該文法的句子. (10分) 七、 設(shè)有文法GE: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*T1 T3=D+1 T4=E-F T5=T3*T4 參考答案 一、填空題(1X20=20分)1 詞法分析、語(yǔ)法分析、代碼優(yōu)化2 自上而下

9、、自下而上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)控制條件、合并已知量、刪除無用賦值(任選3個(gè)) 二、是非題(2X10=20分) 1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 三、簡(jiǎn)答題(見書中相應(yīng)部分)(5X3=15分) 四、解:首先得正規(guī)式方程組: S=0A+1B A=1S+1 B=0S+0 求解該方程組得:S=(01|10)(01|10)* (8分) 五、解 (2分) 是文法GS的句型。 短語(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)造文法GS的LL(1)分析表(5)如下: aBc#SaBcbAB AaAbb B b符號(hào)串baabbb是該文法的句子(3分)(分析過程略)。 七 (2分) 所以該文法為SLR(1)文法。其分析表如下:(8分)狀態(tài)ACTIONGOTO()#E0S2r2r211

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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)論