編譯原理期末考試選擇題匯總_第1頁
編譯原理期末考試選擇題匯總_第2頁
編譯原理期末考試選擇題匯總_第3頁
編譯原理期末考試選擇題匯總_第4頁
編譯原理期末考試選擇題匯總_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、一、單項選擇題1 、將編譯程序分成若干個“遍”是為了 ( B )A 提高程序的執(zhí)行效率B. 使程序的結(jié)構(gòu)更加清晰C 利用有限的機器內(nèi)存并提高機器的執(zhí)行效率D.利用有限的機器內(nèi)存但降低了機器的執(zhí)行效率2、不可能是目標代碼的是 ( D )A 匯編指令代碼 B 可重定位指令代碼C 絕對指令代碼 D 中間代碼3、詞法分析器的輸入是 ( B )A 單詞符號串 B 源程序C 語法單位 D 目標程序4、 編譯程序中的語法分析器接受以c 為單位的輸入,并產(chǎn)生有關(guān)信息供以后各 階段使用??蛇x項有:a、表達式b、產(chǎn)生式c、單詞d、語句5、 高級語言編譯程序常用的語法分析方法中,遞歸下降分析法屬于b 分析方法。可選

2、項有:a、自左至右b、自頂向下 c 、自底向上d 、自右向左6、已知文法 GE :Et TEE t +TE 1 TtFTT t *FTI&Ft(E)l id求: FOLLOW( F) =(1)d,F(xiàn)IRST( T) =( 2)b可選項有:a、*,+b、* , eC、+,#,)d、 * , +, #,)e、 #,) f 、 * , +,#, id7、中間代碼生成時所遵循的是 ( C )A 語法規(guī)則 B 詞法規(guī)則C 語義規(guī)則 D 等價變換規(guī)則8、編譯程序是對 ( D )A 匯編程序的翻譯B 高級語言程序的解釋執(zhí)行C 機器語言的執(zhí)行D 高級語言的翻譯9、詞法分析應(yīng)遵循 ( C )A 語義規(guī)則 B 語

3、法規(guī)則C 構(gòu)詞規(guī)則 D 等價變換規(guī)則10、詞法分析器的輸出結(jié)果是 ( C )A 單詞的種別編碼B 單詞在符號表中的位置C 單詞的種別編碼和屬性值 D 單詞屬性值11、正規(guī)式M1和M2等價是指(C )A . M1和M2的狀態(tài)數(shù)相等B . M1和M2的有向弧條數(shù)相等C . M1和M2所識別的語言集相等D . M1和M2狀態(tài)數(shù)和有向弧條數(shù)相等12、 詞法分析器作為獨立的階段使整個編譯程序結(jié)構(gòu)更加簡潔、明確,因此,( A ) A 詞法分析器應(yīng)作為獨立的一遍B 詞法分析器作為子程序較好C 詞法分析器分解為多個過程,由語法分析器選擇使用D 詞法分析器并不作為一個獨立的階段13、如果 L(M1)=L(M2)

4、,貝U M1 與 M2( A )A 等價 B 都是二義的C 都是無二義的 D 它們的狀態(tài)數(shù)相等14、文法G: St xSx|y所識別的語言是(C )A. xyx B .15、文法G描述的語言*(xyx) * c .L(G)是指(A )xnyxn(n 0) d* *. x*yx*A . L(G)|S*,VT*B. L(G)|S ,(VTVN )C . L(G)|S*,VT*D. L(G)*|S ,(VTVN)16、有限狀態(tài)自動機能識別 ( C )A .上下文無關(guān)文法 B .上下文有關(guān)文法C .正規(guī)文法 D .短語文法17、 編譯過程中掃描器的任務(wù)包括d 。組織源程序的輸入按詞法規(guī)則分割出單詞,識

5、別出其屬性,并轉(zhuǎn)換成屬性字的形式輸出刪除注解 刪除空格及無用字符行計數(shù)、列計數(shù)發(fā)現(xiàn)并定位詞法錯誤建立符號表可選項有:a、b、c、d、18、正則式的“I”讀作(1) b ,“ ”讀作(2) c ,“*”讀作(3) d 。 可選項有:a、并且b、或者c、連接d、閉包19 、 b 這樣一些語言, 它們能被確定的有窮自動機識別, 但不能用正則表達式表示。 可選項有:a、存在b、不存在c、無法判定是否存在20、 編譯過程中,語法分析的任務(wù)是c 。分析單詞是怎樣構(gòu)成的 分析單詞是如何構(gòu)成語句和說明的 分析語句和說明是如何構(gòu)成程序的 分析程序的結(jié)構(gòu) 可選項有:a、和b、c、d、21、 語法分析的常用方法有b

6、 。自頂向下 自底向上 自左向右 自右向左 可選項有:a、b、c、d、22、如果文法 G 是無二義的,則它的任何句子 ( A )A 最左推導(dǎo)和最右推導(dǎo)對應(yīng)的語法樹必定相同B 最左推導(dǎo)和最右推導(dǎo)對應(yīng)的語法樹可能不同C 最左推導(dǎo)和最右推導(dǎo)必定相同D 可能存在兩個不同的最左推導(dǎo),但它們對應(yīng)的語法樹相同23、由文法的開始符經(jīng) 0 步或多步推導(dǎo)產(chǎn)生的文法符號序列是 ( C )A 短語 B 句柄 C 句型 D 句子24、文法 G:E+T|TT t T*P|PP(E)|i則句型 P+T+i 的句柄為 ( B )A P+T B P C P+T+i Di25、文法 G: St b| A |(T)Tt TV S|

7、S則 FIRSTVT(T)=( C )A b ,A, ( B b ,A,) C b ,A, (,V D b ,A,),V 26、產(chǎn)生正規(guī)語言的文法為( D )A 0 型 B 1 型C 2型D 3 型27、任何算符優(yōu)先文法 ( D ) 優(yōu)先函數(shù)。A 有一個 B 沒有 C 有若干個 D 可能有若干個28、采用自上而下分析,必須 ( C )A 消除左遞歸B 消除右遞歸C 消除回溯D 提取公共左因子29、素短語是指 D的短語。至少包含一個符號至少包含一個終結(jié)符號至少包含一個非終結(jié)符號除自身外不再包含其他終結(jié)符號 除自身外不再包含其他非終結(jié)符號 除自身外不再 包含其他短語 除自身外不再包含其他素短語可選

8、項有:A B 、 C 、 D 、30、 給定文法AtbAI cc,下面的符號串中,為該文法句子的是A。cc bcbc bcbcc bccbcc bbbcc可選項有:A、 B 、 C 、 D、31、 已知文法 GS : SteT I RT T tDR| R tdRIs D ta I bd 則 FOLLOW( T) = D 。可選項有:A、dB 、a,b C 、 a,b,# DD。、#E 、d,# 32、正則式中的“*”讀作可選項有:A、并且B、或者C、連接D、閉包33、在規(guī)范歸約中,用 ( B )來刻畫可歸約串。A 直接短語B 句柄 C 最左素短語D 素短語34、有文法 G:E*T|TTt T+

9、i|i句子1+2*8+6按該文法 G歸約,其值為(B )A 23 B 42 C 30D 1735、如果文法是無二義的,那么規(guī)范歸約是指( B )A 最左推導(dǎo)的逆過程B最右推導(dǎo)的逆過程C 規(guī)范推導(dǎo)D最左歸約的逆過程36、文法 G:StS+T|TTt T*P|PPt (S)|i句型 P+T+i 的短語有 ( B )A i,P+T B P,P+T,i,P+T+i CP+T+i D P, P+T, i37、高級語言編譯程序常用的語法分析方法中,遞歸下降分析法屬于b分析方法。可選項有:A、自左至右 B 、自頂向下 C 、自底向上 D 、自右向左38、一般程序設(shè)計語言的定義都涉及 A 三個方面。語法 語義

10、 語用 程序基本符號的確定 可選項有:A、B、C、D、39、編譯過程中,語法分析器的任務(wù)是B 。分析單詞是怎樣構(gòu)成的 分析單詞串是如何構(gòu)成語句和說明的分析語句和說明是如何構(gòu)成程序的 可選項有:A、 B 、 C40、編譯程序生成的目標程序B可選項有:A、一定 B、不一定C分析程序的結(jié)構(gòu)、 D 、 是機器語言的程序。、無法判斷 D 、一定不、單項選擇題(將正確答案的字母填入括號,每題分,共30 分)1、一般程序設(shè)計語言的定義都涉及到()3 個方面。(1)語法 (2)語義 (3)語用 ( 4)程序基本符號的確定2 、程序語言一般分為( 1 )和( 2 )。(1)高級語言; (2)低級語言;(3)專用

11、程序語言; (4)通用程序語言3、面向機器語言指的是(B )。A. 用于解決機器硬件設(shè)計問題的語言B.特定計算機系統(tǒng)所固有的語言C.各種計算機系統(tǒng)都通用的語言D.只能在一臺計算機上使用的語言4 面向機器語言的特點是( D )。A. 程序的執(zhí)行效率低,編制效率低,可讀性差B. 程序的執(zhí)行效率高,編制效率高,可讀性強C. 程序的執(zhí)行效率低,編制效率高,可讀性強D. 程序的執(zhí)行效率高,編制效率低,可讀性差5、 程序設(shè)計語言常見的數(shù)據(jù)類型有: ( 1)數(shù)值型數(shù)據(jù)(2)邏輯數(shù)據(jù) ( 3)字符數(shù)據(jù) (4)指針類型6、 下列程序設(shè)計語言中是應(yīng)用式語言的是:BA、PASCAL B 、LISPC、VB D 、

12、PROLOG7、任何語法結(jié)構(gòu)都可以用( C )來表示。A、語法樹B 、樹C、抽象語法樹D、二義文法樹8、 字母表是符號的有窮集合,由(C )組成詞和句子。A、字符串 B 、字符C、符號 D 、語言9、下列符號是終結(jié)符的是(A )A、c B、A C 、S D 、B10、語法樹用( C )關(guān)系說明了句子中以操作符為核心的操作順序,同時也說明了每一個操作符的操作對 象。A、上下 B、先后 C、層次 D、關(guān)聯(lián)11、循環(huán)語句的語法樹為( D )A、 B 、 C 、 D 、12、表達式中間代碼的生成可采用( B )A、三地址代碼B、四元式 C、三元式 D、間接三元式13、下列文法中,賦值語句的文法是( C

13、 )。A、B、C、D 、Et E op E14、詞法分析的任務(wù)是( A )A、識別單詞 B、分析句子的含義 C、識別句子 D、生成目標代碼15、 常用的中間代碼形式中不含(D )A、三元式 B、四元式 C 、逆波蘭式 D語法樹16、代碼優(yōu)化的目的是( C )A、節(jié)省時間B、節(jié)省空間 C、節(jié)省時間和空間 D、把編譯程序進行等價轉(zhuǎn)換17、代碼生成階段的主要任務(wù)是( C )A、把高級語言翻譯成匯編語言B 、把高級語言翻譯成機器語言C、把中間代碼變換成依賴具體機器的目標代碼D把匯編語言翻譯成機器語言18、詞法分析器的輸入是(BA、單詞符號串B、源程序C 、語法單位D 、目標程序19、中間代碼的生成所遵

14、循的是(A、語法規(guī)則 B、詞法規(guī)則C 、語義規(guī)則D 、等價變換規(guī)則20、編譯程序是對( D )A、匯編程序的翻譯B高級語言程序的解釋并執(zhí)行 C 、機器語言的執(zhí)行D高級語言的翻譯21、語法分析應(yīng)遵循( CA、語義規(guī)則 B 、語法規(guī)則 C、構(gòu)詞規(guī)則 D、等價變換規(guī)則22、編譯程序各階段的工作都涉及到( B )A、語法分析B、表格管理、出錯處理C、語義分析 D、詞法分析23、編譯程序工作時,通常有()階段。1)詞法分析 (2)語法分析 (3)中間代碼生成4)語義檢查 (5)目標代碼生成24、由文法的開始符經(jīng) 0 步或多步推導(dǎo)產(chǎn)生的文法符號序列是A、短語 B 、句柄C 、句型D句子C、單詞的種別編碼和

15、自身值D 、單詞自身值25、產(chǎn)生正規(guī)語言的文法為A、0型C 、 2 型D、 3 型26、對無二義性文法來說,一棵語法樹往往代表了1) 多種推導(dǎo)過程2) 多種最左推導(dǎo)過程3)一種最左推導(dǎo)過程4)僅一種推導(dǎo)過程5)一種最左推導(dǎo)過程A、 B 、( 1)( 3)( 5) C 、 D27、如果文法 G 存在一個句子,滿足下列條件之一時,則稱該文法是二義文法。 BCDa. 該句子的最左推導(dǎo)與最右推導(dǎo)相同b.該句子有兩個不同的最左推導(dǎo)c. 該句子有兩棵不同的最右推導(dǎo)d.該句子有兩棵不同的語法樹e. 該句子的語法樹只有一個28、優(yōu)化可生成( D )的目標代碼。A、運行時間較短B 、占用存儲空間較小、運行時間短

16、且占用內(nèi)存空間大D、運行時間短且存儲空間小29、構(gòu)造編譯程序應(yīng)掌握( D )A、源程序 B 、目標程序 C 、編譯方法D以上三項都是30、賦值語句 x=a+b*c-d 的逆波蘭式為( B )A、 xab+c*d-=B 、 xabc*+d-=C 、 xabcd*+-= D 、 x=abc*+d-31、詞法分析器的輸出結(jié)果是(CA、單詞的種別編碼單詞在符號表中的位置編譯原理期末試題(一)一、是非題(請在括號內(nèi),正確的劃,錯誤的劃X)(每個2分,共20分)1 編譯程序是對高級語言程序的解釋執(zhí)行。(X)2 一個有限狀態(tài)自動機中,有且僅有一個唯一的終態(tài)。(X)3 .一個算符優(yōu)先文法可能不存在算符優(yōu)先函數(shù)

17、與之對應(yīng)。(V )4 語法分析時必須先消除文法中的左遞歸。(X)( V)5. LR分析法在自左至右掃描輸入串時就能發(fā)現(xiàn)錯誤,但不能準確地指出出錯地點。6 .逆波蘭表示法表示表達式時無須使用括號。(V )7 .靜態(tài)數(shù)組的存儲空間可以在編譯時確定。(X)8 進行代碼優(yōu)化時應(yīng)著重考慮循環(huán)的代碼優(yōu)化,這對提高目標代碼的效率將起更大作用。(X)9 兩個正規(guī)集相等的必要條件是他們對應(yīng)的正規(guī)式等價。(X )10. 一個語義子程序描述了一個文法所對應(yīng)的翻譯工作。(X)( 每個 4 分,二、選擇題 (請在前括號內(nèi)選擇最確切的一項作為答案劃一個勾,多劃按錯論共 40 分)1詞法分析器的輸出結(jié)果是A( ) 單詞的種

18、別編碼B( ) 單詞在符號表中的位置C( ) 單詞的種別編碼和自身值D( ) 單詞自身值2 正規(guī)式 M 1 和 M 2 等價是指 A. ( ) M1和M2的狀態(tài)數(shù)相等B . ( ) M1和M2的有向邊條數(shù)相C. ( ) M1和M2所識別的語言集相等D. ( ) M1和M2狀態(tài)數(shù)和有向邊條數(shù)相等3. 文法G: StxSx|y所識別的語言是 D ( ) x*yx*A. ( ) xyxB . ( ) (xyx)* C. ( ) xnyxn(n 0)4 .如果文法G是無二義的,則它的任何句子aA(=JFIRSTVT(S) a,(FIRSTVT(T) , ,a,A,(LASTVT(S) af)LASTV

19、T(T) , ,a,A,)#=(2) 是算符優(yōu)先文法,因為任何兩個終結(jié)符之間至多只有一種優(yōu)先關(guān) 系。(2分)(3) 給出輸入串(a,a)#的算符優(yōu)先分析過程。步驟棧當前輸入字符剩余輸入串動作1(a,a#(移進2#(a,a)#(,歸約4#(NJa)#(,移進5#(N,a)#,)歸約7#(N,N)#,) 歸約8#(N)#(=) 移進9#(N)#)#歸約10#N#接受:、構(gòu)造下列正規(guī)式相應(yīng)的DFA(用狀態(tài)轉(zhuǎn)換圖表示)(15)(1) 1( 0 | 1 )*1編譯原理期末試題(四)、給出下面語言的相應(yīng)文法:(15) 1, 0Li=an bn | n 1 L2=anbm+am | nG1 :G1:aAb

20、|abS ABA aAb | abB bBa |四、對下面的文法 G:S a | b |( T)T T, S | S(1) 消去文法的左遞歸,得到等價的文法G2;(2) 判斷文法G2是否LL( 1)文法,如果是,給出其預(yù)測分析表。(15)G2:S a | b |(T)TSTT,S T|G2是LL (1)文法。ab()#SS aS b4( T)TT STT STT ST TTT , ST五、設(shè)有文法GA:BCc | gDBbCDE | C DaB | caDdD | i gAf | c(1) 計算該文法的每一個非終結(jié)符的FIRST集和FOLLOW集(2) 試判斷該文法是否為 LL (1)文法。(

21、15)FIRSTFOLLOWAA,b,c,d,gBbA,c,dCA,c,dC,d,gDDA,b,c,gEC,g是LL ( 1)文法。六、對表達式文法 G:E t E+T | TT t T*F | FF t (E) | I(1 )造各非終結(jié)符的 FIRSTVT和LASTVT集合;(2 )構(gòu)造文法的算符優(yōu)先關(guān)系表。(15)FIRSTVTLASTVTE*, +, (, i*, +,), iT*, (, i*,), iF(,i),i算符優(yōu)先關(guān)系表+*I()#+*I(#=七、有定義二進制整數(shù)的文法如下:Lt LB | BB t 0 | 1構(gòu)造一個翻譯模式,計算該二進制數(shù)的值(十進制的值) 。(15) 引

22、入L、B的綜合屬性val,翻譯模式為:ST Lpri ntlT LiB= *2+lT B= BT 0=0B t 1=1編譯原理期末試題(五)一、單項選擇題(共10小題,每小題2分,共20分)1 .語言是A. 句子的集合B產(chǎn)生式的集合C.符號串的集合D.句型的集合2 編譯程序前三個階段完成的工作是A. 詞法分析、語法分析和代碼優(yōu)化B. 代碼生成、代碼優(yōu)化和詞法分析C. 詞法分析、語法分析、語義分析和中間代碼生成D. 詞法分析、語法分析和代碼優(yōu)化3 .一個句型中稱為句柄的是該句型的最左A 非終結(jié)符號 B 短語 C 句子D.直接短語4 下推自動機識別的語言是A. 0型語言B. 1型語言C. 2型語言

23、D. 3型語言5 .掃描器所完成的任務(wù)是從字符串形式的源程序中識別出一個個具有獨立含義的最小語法 單位即A . 字符B.單詞 C .句子 D .句型6 .對應(yīng)Chomsky四種文法的四種語言之間的關(guān)系是A . LoL1L2LbB. L3L2L1 LoC . L3=L2 L1 L0D.Lo L1 L2=L37.詞法分析的任務(wù)是A.識別單詞B.分析句子的含義C.識別句子D.生成目標代碼8.常用的中間代碼形式不含A.三兀式B.四兀式C .逆波蘭式D.語法樹9.代碼優(yōu)化的目的是A.節(jié)省時間B.節(jié)省空間C.節(jié)省時間和空間D.把編譯程序進行等價交換10.代碼生成階段的主要任務(wù)是A .把高級語言翻譯成匯編語

24、言B .把高級語言翻譯成機器語言C .把中間代碼變換成依賴具體機器的目標代碼D .把匯編語言翻譯成機器語言四、簡答題(共4小題,每小題5分,共20分)1 .編譯程序和高級語言有什么區(qū)別?用匯編語言或高級語言編寫的程序,必須先送入計算機,經(jīng)過轉(zhuǎn)換成用機器 語言表示的目標程序(這個過程即編譯),才能由計算機執(zhí)行。執(zhí)行轉(zhuǎn)換過程 的程序叫編譯程序。匯編程序是指沒有編譯過的匯編語言源文件。編譯程序轉(zhuǎn) 換過的叫目標程序,也就是機器語言。編譯程序的工作情況有三種:匯編型、解釋型和編譯型。匯編型編譯程序用來將匯編語言編寫的程序,按照一一對應(yīng)的關(guān)系,轉(zhuǎn)換成用機器語言表示的程序。 解釋型編譯程序?qū)⒏呒壵Z言程序的一

25、個語句,先解釋成為一組機器語言的指令, 然后立即執(zhí)行,執(zhí)行完了,取下一組語句解釋和執(zhí)行,如此繼續(xù)到完成一個程序 止。用解釋型編譯程序,執(zhí)行速度很慢,但可以進行人和計算機的”對話”,隨時可以修改高級語言的程序。BASIC語言就是解釋型高級語言。編譯型編譯程序?qū)⒓壵Z言編寫的程序,一次就會部翻譯成機器語言表示的程序,而且過程進行很快, 在過程中,不能進行人機對話修改。FORTRAI語言就是編譯型高級語言。2 編譯程序的工作分為那幾個階段 ?詞法分析、語法分析和語義分析是對源程序進行的分析(稱為編譯程序的前端),而中間代碼生成、代碼優(yōu)化和代碼生成三個階段合稱為對源程序進行綜合(稱為編譯程序的后端),它們從源程序的中間表示建立起和源程序等價的目標程序。3 .簡述自下而上的分析方法。所謂自下而上分析法就是從輸入串開始,逐步進行“歸約”,直至歸約到文法的開始符號;或者說從語法樹的末端開始,步步向上“歸約”,直到根節(jié)點

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論