資源描述:
《編譯原理復(fù)習(xí)資料(試題)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、一、單項選擇題(將正確答案的字母填入括號,每題1.5分,共30分)1、一般程序設(shè)計語言的定義都涉及到(1.2.3)3個方面。(1)語法(2)語義(3)語用(4)程序基本符號的確定2、程序語言一般分為(1)和(2)。(1)高級語言;(2)低級語言;(3)專用程序語言;(4)通用程序語言3、面向機器語言指的是(B)。A.用于解決機器硬件設(shè)計問題的語言B.特定計算機系統(tǒng)所固有的語言C.各種計算機系統(tǒng)都通用的語言D.只能在一臺計算機上使用的語言4.面向機器語言的特點是(D)。A.程序的執(zhí)行效率低,編制效率低,可讀性差B.程序的執(zhí)行效率高,編
2、制效率高,可讀性強C.程序的執(zhí)行效率低,編制效率高,可讀性強D.程序的執(zhí)行效率高,編制效率低,可讀性差5、程序設(shè)計語言常見的數(shù)據(jù)類型有:1.2.3.4(1)數(shù)值型數(shù)據(jù)(2)邏輯數(shù)據(jù)(3)字符數(shù)據(jù)(4)指針類型6、下列程序設(shè)計語言中是應(yīng)用式語言的是:BA、PASCALB、LISPC、VBD、PROLOG7、任何語法結(jié)構(gòu)都可以用(C)來表示。A、語法樹B、樹C、抽象語法樹D、二義文法樹8、字母表是符號的有窮集合,由(C)組成詞和句子。A、字符串B、字符C、符號D、語言9、下列符號是終結(jié)符的是(A)。A、cB、AC、SD、β10、語法樹用
3、(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)。A、B、C、D、E→EopE14、詞法分析的任務(wù)是(A)A、識別單詞B、分析句子的含義C、識別句子D、生成目標(biāo)代碼15、常用的中間代碼形式中不含(D)A、三元式B、四元式C、逆波蘭式D、語法樹16、代碼優(yōu)化的目的是(C)A、節(jié)省時間B、節(jié)省空間C
4、、節(jié)省時間和空間D、把編譯程序進行等價轉(zhuǎn)換17、代碼生成階段的主要任務(wù)是(C)A、把高級語言翻譯成匯編語言B、把高級語言翻譯成機器語言C、把中間代碼變換成依賴具體機器的目標(biāo)代碼D、把匯編語言翻譯成機器語言18、詞法分析器的輸入是(B)A、單詞符號串B、源程序C、語法單位D、目標(biāo)程序19、中間代碼的生成所遵循的是(C)A、語法規(guī)則B、詞法規(guī)則C、語義規(guī)則D、等價變換規(guī)則20、編譯程序是對(D)A、匯編程序的翻譯B、高級語言程序的解釋并執(zhí)行C、機器語言的執(zhí)行D、高級語言的翻譯21、語法分析應(yīng)遵循(C)A、語義規(guī)則B、語法規(guī)則C、構(gòu)詞規(guī)則
5、D、等價變換規(guī)則22、編譯程序各階段的工作都涉及到(B)A、語法分析B、表格管理、出錯處理C、語義分析D、詞法分析23、編譯程序工作時,通常有(1.2.3.4)階段。(1)詞法分析(2)語法分析(3)中間代碼生成(4)語義檢查(5)目標(biāo)代碼生成24、由文法的開始符經(jīng)0步或多步推導(dǎo)產(chǎn)生的文法符號序列是C。A、短語B、句柄C、句型D、句子25、產(chǎn)生正規(guī)語言的文法為D。A、0型B、1型C、2型D、3型26、對無二義性文法來說,一棵語法樹往往代表了D。(1)多種推導(dǎo)過程(2)多種最左推導(dǎo)過程(3)一種最左推導(dǎo)過程(4)僅一種推導(dǎo)過程(5)一
6、種最左推導(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)的目標(biāo)代碼。A、運行時間較短B、占用存儲空間較小C、運行時間短且占用內(nèi)存空間大D、運行時間短且存儲空間小29、構(gòu)造編譯程序應(yīng)掌握(D)A、源程序B、目標(biāo)程序C、編譯方法D、以上三項都是30、賦值語句x=a+b*c-d的逆波蘭式為(B)A、xab
7、+c*d-=B、xabc*+d-=C、xabcd*+-=D、x=abc*+d-31、詞法分析器的輸出結(jié)果是(C)A、單詞的種別編碼B、單詞在符號表中的位置C、單詞的種別編碼和自身值D、單詞自身值二、填空題(每空1分,共15分)1、常見的程序設(shè)計語言主要有(過程式語言)、(面向?qū)ο笳Z言)、(應(yīng)用式語言)、(基于規(guī)則的語言)4種類型。2、翻譯過程中翻譯的主要工作就是把高級語言翻譯成(中間語言)。3、編譯程序前端主要由與源語言有關(guān)而與目標(biāo)語言無關(guān)的部分組成,這些部分包括詞法分析、(語法分析)、語義分析和(中間代碼生成)。4、編譯程序后端主
8、要由編譯程序中與目標(biāo)程序有關(guān)的部分組成,主要包括(代碼優(yōu)化)和(目標(biāo)代碼生成)。5、如果按語言結(jié)構(gòu)的形式分類,可以把程序設(shè)計語言分為過程式語言、(面向?qū)ο笳Z言)、應(yīng)用式語言和(基于規(guī)則的語言)。6、編譯程序首先要識別出源程序中每個單詞