編譯原理模擬試題及參考答案
模擬試題的練習對于學好編譯原理課程有很大的幫助。以下是陽光網(wǎng)小編要與大家分享的編譯原理模擬試題,供大家參考!
編譯原理模擬試題一、填空題
(每空2分,共20分)
1.編譯程序首先要識別出源程序中每個單詞,然后再分析每個句子并翻譯其意義。
2.編譯器常用的語法分析方法有自底向上和自頂向下兩種。
3.通常把編譯過程分為分析前端與綜合后端兩大階段。詞法、語法和語義分析是對源程序的分析,中間代碼生成、代碼優(yōu)化與目標代碼的生成則是對源程序的綜合。
4.程序設計語言的發(fā)展帶來了日漸多變的運行時存儲管理方案,主要分為兩大類,即靜態(tài)存儲分配方案和動態(tài)存儲分配方案。
5.對編譯程序而言,輸入數(shù)據(jù)是源程序,輸出結果是目標程序。
1.計算機執(zhí)行用高級語言編寫的程序主要有兩種途徑:解釋和編譯。
2.掃描器是詞法分析器,它接受輸入的源程序,對源程序進行詞法分析并識別出一個個單詞符號,其輸出結果是單詞符號,供語法分析器使用。
3.自下而上分析法采用移進、歸約、錯誤處理、接受等四種操作。
4.一個LL(1)分析程序需要用到一張分析表和符號棧。
5.后綴式abc-/所代表的表達式是a/(b-c)。
編譯原理模擬試題二、單項選擇題
(每小題2分,共20分)
1.詞法分析器的輸出結果是__C。
A. 單詞的種別編碼 B. 單詞在符號表中的位置
C. 單詞的種別編碼和自身值 D. 單詞自身值
2. 正規(guī)式 M 1 和 M 2 等價是指__C_。
A. M1和M2的狀態(tài)數(shù)相等 B. M1和M2的有向邊條數(shù)相等
C. M1和M2所識別的語言集相等 D. M1和M2狀態(tài)數(shù)和有向邊條數(shù)相等
3. 文法G:S→xSx|y所識別的語言是_C____。
A. xyx B. (xyx)* C. xnyxn(n≥0) D. x*yx*
4.如果文法G是無二義的,則它的任何句子α_A____。
A.最左推導和最右推導對應的語法樹必定相同 B.最左推導和最右推導對應的語法樹可能不同
C.最左推導和最右推導必定相同 D.可能存在兩個不同的最左推導,但它們對應的語法樹相同
5.構造編譯程序應掌握____D__。
A.源程序 B.目標語言 C. 編譯方法 D.以上三項都是
6.四元式之間的聯(lián)系是通過__B___實現(xiàn)的。
A.指示器 B.臨時變量 C.符號表 D.程序變量
7.表達式(┐A∨B)∧(C∨D)的逆波蘭表示為__B___。
A. ┐AB∨∧CD∨ B. A┐B∨CD∨∧ C. AB∨┐CD∨∧ D. A┐B∨∧CD∨
8. 優(yōu)化可生成__D___的目標代碼。
A.運行時間較短 B.占用存儲空間較小
C.運行時間短但占用內(nèi)存空間大 D.運行時間短且占用存儲空間小
9.下列___C___優(yōu)化方法不是針對循環(huán)優(yōu)化進行的。
A. 強度削弱 B.刪除歸納變量 C.刪除多余運算 D.代碼外提
10.編譯程序使用_B_區(qū)別標識符的作用域。
A. 說明標識符的過程或函數(shù)名 B.說明標識符的過程或函數(shù)的靜態(tài)層次
C.說明標識符的過程或函數(shù)的動態(tài)層次 D. 標識符的行號
編譯原理模擬試題三、判斷題
(對的打√,錯的打×,每小題1分,共10分)
2.一個有限狀態(tài)自動機中,有且僅有一個唯一的終態(tài)。x
3.一個算符優(yōu)先文法的每個非終結符號間都也可能存在優(yōu)先關系。X
4.語法分析時必須先消除文法中的左遞歸 。X
6.逆波蘭表示法表示表達式時無須使用括號。R
9.兩個正規(guī)集相等的必要條件是他們對應的正規(guī)式等價。 X
1.編譯程序是對高級語言程序的編譯執(zhí)行。X
2.一個有限狀態(tài)自動機中,有且僅有一個唯一的初始態(tài)。R
3.一個算符優(yōu)先文法的每個非終結符號間都不存在優(yōu)先關系。R
4.LL(1)語法分析時必須先消除文法中的.左遞歸 。 R
5.LR分析法在自左至右掃描輸入串時就能發(fā)現(xiàn)錯誤,但不能準確地指出出錯地點。 R
6.逆波蘭表示法表示表達式時根據(jù)表達式會使用括號。 X
7.靜態(tài)數(shù)組的存儲空間可以在編譯時確定。X
8.進行代碼優(yōu)化時應著重考慮循環(huán)的代碼優(yōu)化,這對提高目標代碼的效率將起更大作用。X
9.兩個正規(guī)集相等的必要條件是他們產(chǎn)生的符號串是相同的。 R
10.一個語義子程序描述了一個文法所對應的翻譯工作。 X
編譯原理模擬試題四、問答題
1.什么是S-屬性文法?什么是L-屬性文法?它們之間有什么關系?
S-屬性文法是只含有綜合屬性的屬性文法。 (2分)
L-屬性文法要求對于每個產(chǎn)生式AX1X2…Xn,其每個語義規(guī)則中的每個屬性或者是綜合屬性,或者是Xj的一個繼承屬性,且該屬性僅依賴于:
(1) 產(chǎn)生式Xj的左邊符號X1,X2…Xj-1的屬性;
(2) A的繼承屬性。 (2分)
S-屬性文法是L-屬性文法的特例。 (1分)
2.什么是LL(1)分析器
2.什么是LR(0)分析器
所謂LR(0)分析,是指從左至右掃描和自底向上的語法分析,且在分析的每一步,只須根據(jù)分析棧當前已移進和歸約出的全部文法符號,并至多再向前查看0個輸入符號,就能確定相對于某一產(chǎn)生式左部符號的句柄是否已在分析棧的頂部形成,從而也就可以確定當前所應采取的分析動作 (是移進還是按某一產(chǎn)生式進行歸約等)。
編譯原理模擬試題五、綜合題
(共40分)
1.(10分)對于文法 G[S] :
S → 1A | 0B | ε A → 0S | 1AA B → 1S | 0BB
、 (3 分 ) 請寫出三個關于 G[S] 的句子;
、 (4 分 ) 符號串 11A0S 是否為 G [S] 的句型?試證明你的結論。
、 (3 分 ) 試畫出 001B 關于 G [S] 的語法樹。
答:
(1) 三個 0 和 1 數(shù)量相等的串 (每個1分)
(2) S => 1A => 11AA => 11A 0S
看過“編譯原理模擬試題”的人還看了:
1.大學期末試題
2.編譯原理答案
【編譯原理模擬試題及參考答案】相關文章: