編譯原理習(xí)題_第1頁
編譯原理習(xí)題_第2頁
編譯原理習(xí)題_第3頁
編譯原理習(xí)題_第4頁
編譯原理習(xí)題_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、正規(guī)文法又稱DA、0型文法B、1型文法C、2型文法D、3型文法2、關(guān)于無二義性的文法,規(guī)范歸約是B最左推導(dǎo)B.最右推導(dǎo)的逆過程C.最左歸約的逆過程D.最右歸約的逆過程。3、掃描器的任務(wù)是從源程序中辨別出一個(gè)個(gè)單詞符號(hào)。4、程序所需的數(shù)據(jù)空間在程序運(yùn)轉(zhuǎn)前便可確立,稱為A管理技術(shù)。A靜態(tài)儲(chǔ)存

B

動(dòng)向儲(chǔ)存

C

棧式儲(chǔ)存

D堆式儲(chǔ)存5、編譯過程中,語法剖析器的任務(wù)是(B)。①剖析單詞是如何構(gòu)成的②剖析單詞串是如何構(gòu)成語句和說明的③剖析語句和說明是如何構(gòu)成程序的④剖析程序的結(jié)構(gòu)A、②③B、②③④C、①②③

D、①②③④6、文法G:E→E+T|TT→T*P|PP→(E)|i則句型P+T+i的句柄和最左素短語分別為B。A、P+T和iB、P和P+TC、i和P+T+i7、四元式之間的聯(lián)系是經(jīng)過B實(shí)現(xiàn)的A.指示器B.暫時(shí)變量C.符號(hào)表D.程序變量

D

、P和

P8、程序語言的單詞符號(hào)一般能夠分為保存字、表記符、常數(shù)、運(yùn)算符、界符等等。9、以下B優(yōu)化方法是針對(duì)循環(huán)優(yōu)化進(jìn)行的。A.刪除剩余運(yùn)算B.刪除概括變量C.歸并已知量D.復(fù)寫流傳10、若文法G定義的語言是無窮集,則文法必然是AA、遞歸的B、前后文沒關(guān)的C、二義性的D、無二義性的11、文法G產(chǎn)生的A、句型B

D、終結(jié)符集

的全體是該文法描繪的語言。C、非終結(jié)符集D、句子12、Chomsky定義的四種形式語言文法中,

0型文法又稱為

A

文法;

1

型文法又稱為

C

文法。A.短語文法A.短語文法

B.上下文沒關(guān)文法B.上下文沒關(guān)文法

C.上下文相關(guān)文法C.上下文相關(guān)文法

D.正規(guī)文法D.正規(guī)文法13、語法剖析最常用的兩類方法是自頂向下和自底向上剖析法。14、一個(gè)確立的有窮自動(dòng)機(jī)

DFA是一個(gè)

A

。A五元組(

K,∑,f,S,Z

B

四元組(

VN,VT,P,S)C四元組(

K,∑,

f,S)

D

三元組

(VN,VT,P)A、語法

B、語義

C、代碼

D、運(yùn)轉(zhuǎn)15、B不屬于喬姆斯基看法分類的文法。A、上下文沒關(guān)文法B、算符優(yōu)先文法C、上下文相關(guān)文法D、正規(guī)文法16、一個(gè)文法所描繪的語言是A;描繪一個(gè)語言的文法是B。A.獨(dú)一的B.不獨(dú)一的C.可能獨(dú)一,可能不獨(dú)一A.獨(dú)一的B.不獨(dú)一的C.可能獨(dú)一,可能不獨(dú)一17、語法剖析是依照語言的語法例則進(jìn)行的,中間代碼產(chǎn)生是依照語言的等價(jià)變換規(guī)則進(jìn)行的。18、B不屬于喬姆斯基看法分類的文法。A上下文沒關(guān)文法B算符優(yōu)先文法C上下文相關(guān)文法D正規(guī)文法19、過程調(diào)用時(shí)參數(shù)傳達(dá)方式有A(1)傳地點(diǎn)(2)傳值(3)傳表記符(4)得結(jié)果(5)傳名(6)返回值可選項(xiàng)有:A、(1)(2)(4)(5)B、(1)(2)(5)(6)C、(1)(2)(3)(6)D、(2)(3)(4)(6)20、過程調(diào)用時(shí)參數(shù)傳達(dá)方式有(1)傳地點(diǎn)(2)傳值(3)傳表記符(4)得結(jié)果(5)傳名(6)返回值可選項(xiàng)有:A、(1)(2)(4)(5)B、(1)(2)(5)(6)C、(1)(2)(3)(6)D、(2)(3)(4)(6)21、以下代碼中D

不行能是目標(biāo)代碼。A、匯編指令代碼

B、可重定位指令代碼

C、絕對(duì)指令代碼

D、中間代碼22、一張變換圖只包含有限個(gè)狀態(tài),

此中有一個(gè)被以為是初態(tài),

最多只有一個(gè)終態(tài)。

BB

。A.正確B.不正確23、有限自動(dòng)機(jī)能辨別CA.上下文沒關(guān)文法B.上下文相關(guān)文法C.正規(guī)文法D.短語文法。24、匯編程序是將B程序改造成目口號(hào)言程序的翻譯程序。A機(jī)器語言B匯編語言C高級(jí)語言D初級(jí)語言25、LR(k)文法___B____二義性的。A、都是B、都不是C、不必定都是26、喬姆斯基方法的

2型語言是這樣一種語言,其產(chǎn)生式限制為

AA、A→

B、A→a,A→aB

C、

→β(|

|

|

|)

D

、→27、局部優(yōu)化是限制于一個(gè)C范圍內(nèi)的一種優(yōu)化。A.循環(huán)B.函數(shù)C.基本塊D.整個(gè)程序28、目標(biāo)代碼生成時(shí),應(yīng)試慮如何充分利用計(jì)算機(jī)的存放器的問題。A。A.正確B.不正確29、喬姆斯基方法的

3型語言是這樣一種語言,其產(chǎn)生式限制為

BAA→

BA

→a或

A→aB

C

→β(|

|

|

|)

D

→30、運(yùn)算符與運(yùn)算對(duì)象種類不符屬于A。A、語法錯(cuò)誤B、語義錯(cuò)誤C、語用錯(cuò)誤D、規(guī)則會(huì)合31、詞法剖析器的輸入是B。A、詞法記號(hào)B、源程序C、語法單位D、目標(biāo)程序32、在下述的編譯方法中,自底向上的方法有F,自頂向下的剖析方法有①簡單優(yōu)先剖析②算符優(yōu)先剖析③遞歸降落剖析④展望剖析技術(shù)析⑥SLR(k)剖析⑦LL(k)剖析⑧LALR(K)剖析A.③④⑦B.③④⑧C.①②⑧D.③④⑤⑥⑦E.①②⑤⑥⑦F.

A。⑤LR(K)分①②⑤⑥⑧A.③④⑦

B.

③④⑧

C.①②⑧

D.③④⑤⑥⑦

E.①②⑤⑥⑦

F.

①②⑤⑥⑧33、關(guān)于數(shù)據(jù)空間的存貯分派,

FORTRAN采納動(dòng)向儲(chǔ)存分派策略。

B

。A.正確

B.不正確34、算符優(yōu)先剖析法每次都是對(duì)C進(jìn)行歸約。A句柄B短語C最左素短語D素短語35、編譯時(shí)能進(jìn)行的種類檢查稱為C。A、錯(cuò)誤檢查B、動(dòng)向檢查C、靜態(tài)檢查D、隨機(jī)檢查36、規(guī)范推導(dǎo)的每一步老是用產(chǎn)生式右側(cè)符號(hào)串替代句型中B地點(diǎn)的非終結(jié)符號(hào)A、最左B、最右C、最中D、隨意37、語法剖析器的輸入是單詞符號(hào)流,其輸出是剖析樹的某種表示38、每個(gè)文法都能改寫為LL(1)文法。BA.正確B.不正確39、關(guān)于無二義性的文法,規(guī)范推導(dǎo)是C最左推導(dǎo)B最右推導(dǎo)的逆過程C最左歸約的逆過程D最右歸約的逆過程。40、描繪語言L={a

mnb|n≥m≥1}

的文法為D

。A、Z→Abb

A→aA|a

B→bB|bB、Z→AB|bC、Z→Ab

A→Aa|aA→aAb|a

B→aBb|bD、Z→aAb

A→Ab|aAb|

ε41、間接三元式表示法的長處為

AA、采納間接碼表,便于優(yōu)化辦理C、便于優(yōu)化辦理,節(jié)儉儲(chǔ)存空間

B、節(jié)儉儲(chǔ)存空間,不便于表的改正D、節(jié)儉儲(chǔ)存空間,不便于優(yōu)化辦理42、編譯時(shí)能進(jìn)行的種類檢查稱為

CA錯(cuò)誤檢查B動(dòng)向檢查43、文法G[S]:S→xSx|ynnA、xyx(n≥0)B、

C靜態(tài)檢查D隨機(jī)檢查所識(shí)其他語言是A。(xyx)*C、xyxD、x*yx*44、項(xiàng)目A→α·稱為A、移進(jìn)項(xiàng)目

B,此中A∈VN,A不是開始符。B、歸約項(xiàng)目C、犯錯(cuò)項(xiàng)目D、接受項(xiàng)目45、設(shè)有文法A、是

G[S]:S->S*S|S+S|(S)|a,B、不是

該文法___A__二義性文法。C、不必定46、高級(jí)語言編譯程序常用的語法剖析方法中,LL剖析法屬于B剖析方法。A、自左至右B、自頂向下C、自底向上D、自右至左。47、有文法G:E→E*T|TT→T+i|i句子2+5*3+3按該文法G歸約,其值為BA23B42C30D1748、高級(jí)語言編譯程序常用的語法剖析方法中,LL剖析法屬于B剖析方法。A自左至右B自頂向下C自底向上D自右至左。49、形如A→α·Bβ的項(xiàng)目為A項(xiàng)目。A、待約B、移進(jìn)C、接受D、規(guī)約50、活動(dòng)記錄的連結(jié)數(shù)據(jù)不包含A。A、形參單元B、動(dòng)向鏈(老SP)C、返回地點(diǎn)D、全局Display地點(diǎn)51、高級(jí)語言編譯程序常用的語法剖析方法中,lALR剖析法屬于C剖析方法。A、自左至右B、自上而下C、自下而上D、自右至左52、設(shè)a、b、c是文法的終結(jié)符,且知足優(yōu)先關(guān)系a=?b和b=?c,則D。A.必有a=?cB.必有c=?aC必有b=?aD答案A~C都不必定成立53、詞法剖析器的輸出是A。A、詞法記號(hào)流B、源程序C、語法單位D、目標(biāo)程序54、對(duì)一個(gè)基本塊來說,A是正確的。A、只有一個(gè)進(jìn)口語句和一個(gè)出口語句B、有一個(gè)進(jìn)口語句和多個(gè)出口語句C、有多個(gè)進(jìn)口語句和一個(gè)出口語句D、有多個(gè)進(jìn)口語句和多個(gè)出口語句55、詞法剖析所依照的是B。A語義規(guī)則B構(gòu)詞規(guī)則C語法例則D等價(jià)變換規(guī)則56、句型是由D推導(dǎo)出的符號(hào)串。A、非終結(jié)符B、終結(jié)符C、任何符號(hào)D、開始符號(hào)57、假如文法G是無二義的,則它的任何句子αA。、最左推導(dǎo)和最右推導(dǎo)對(duì)應(yīng)的語法樹必然同樣、最左推導(dǎo)和最右推導(dǎo)對(duì)應(yīng)的語法樹可能不一樣、最左推導(dǎo)和最右推導(dǎo)必然同樣、可能存在兩個(gè)不一樣的最左推導(dǎo),但它們對(duì)應(yīng)的語法樹同樣58、算符優(yōu)先文法與算符優(yōu)先函數(shù)的關(guān)系的描繪中正確的選項(xiàng)是(B)。A、一個(gè)算符優(yōu)先文法必定存在優(yōu)先函數(shù)與之對(duì)應(yīng)B、一個(gè)算符優(yōu)先文法可能存在多個(gè)優(yōu)先函數(shù)與之對(duì)應(yīng)C、一個(gè)算符優(yōu)先文法必定存在多個(gè)優(yōu)先函數(shù)與之對(duì)應(yīng)D、一個(gè)算符優(yōu)先文法必定存在有限對(duì)優(yōu)先函數(shù)與之對(duì)應(yīng)59、一個(gè)句型中稱為句柄的是該句型的最左D。A非終結(jié)符B短語C句子D直接短語60、描繪一個(gè)語言的文法是(B)A、獨(dú)一的B、不獨(dú)一的C、可能獨(dú)一,也可能不獨(dú)一61、以下C優(yōu)化方法不是針對(duì)循環(huán)優(yōu)化進(jìn)行的。A、強(qiáng)度削弱B、刪除概括變量C、刪除剩余運(yùn)算D、代碼外提62、更動(dòng)一張

A

表很困難。A

三元式

B

間接三元式

C四元式

D

三元式和四元式63、棧式儲(chǔ)存分派申請(qǐng)和開釋儲(chǔ)存空間恪守A、先申請(qǐng)先開釋B、先申請(qǐng)后開釋

BC

原則。C、后申請(qǐng)先開釋

D、隨意64、所謂自上而下剖析法是指

。65、所謂語法制導(dǎo)翻譯方法是66、確立的有窮自動(dòng)機(jī)是一個(gè)∑,f,s0,Z)。

五元組

。

,往常表示為

M=(S,67、規(guī)范歸約中的可歸約串是指

句柄

;算符優(yōu)先剖析中的可歸約串是指

最最左左素素短短語語

。68、編譯程序在邏輯上由

詞法剖析

、語語法法分剖析析

、語義剖析、中間代碼生成、代碼優(yōu)化和目標(biāo)代碼生成六部分構(gòu)成。69、D不行能是目標(biāo)程序。A、匯編語言模塊B、可重定位目標(biāo)模塊C、可履行目標(biāo)模塊D、中間代碼70、假如一個(gè)文法存在某個(gè)句子對(duì)應(yīng)兩棵不一樣的語法樹,則稱這個(gè)文法是二義的。71、一個(gè)名字的屬性包含繼承屬性和綜合屬性。72、正規(guī)式的“*”讀作星閉包。73、編譯程序在邏輯上由、、語義剖析、中間代碼生成、代碼優(yōu)化和目標(biāo)代碼生成六部分構(gòu)成。74、編譯程序的各個(gè)階段的工作都波及到符號(hào)表管理和錯(cuò)誤辦理75、文法用來描繪語言的語法結(jié)構(gòu),它由以下4個(gè)部分構(gòu)成:文法終結(jié)符會(huì)合、文法非終結(jié)符會(huì)合、D和文法開始符號(hào)。A、單詞會(huì)合B、字母數(shù)字串C、文法句子會(huì)合D、文法產(chǎn)生式的會(huì)合76、確立的有窮自動(dòng)機(jī)是一個(gè)元組,往常表示為。77、已知文法G[E]:E→E+T|TT→T*F|FF→(E)|id該文法終結(jié)符會(huì)合VT=,文法非終結(jié)符會(huì)合VN=,該文法在喬姆斯基(Chomsky)文法分類屬于2文法。78、編譯程序的各個(gè)階段的工作都波及到和。79、假定G是一個(gè)文法,S是文法開始符號(hào),假如S*>x,則稱x是該文法的一。80、假如一個(gè)文法存在某個(gè)句子對(duì)應(yīng)兩棵不一樣的語法樹,則稱這個(gè)文法是。81、優(yōu)化時(shí),節(jié)儉一條指令MOVRi,M,節(jié)儉的指令代價(jià)為CA、0B、1C、2D、382、采納LL(1)語法剖析時(shí),一定除去文法的左遞歸。83、在狀態(tài)變換圖中,結(jié)點(diǎn)代表狀態(tài),用圓圈表示。84、若源程序是高級(jí)語言編寫的,目標(biāo)程序是機(jī)器語言或匯編語言的程序,則相應(yīng)的翻譯程序稱為編譯程序。85、常用的兩種動(dòng)向存貯分派方法是棧式分派和堆式分派。86、翻譯方案和語法制導(dǎo)定義不一樣的是它的語義動(dòng)作(而不叫語義規(guī)則)放在括號(hào){}內(nèi),而且能夠插在產(chǎn)生式右部的任何地方87、假如一個(gè)文法存在某個(gè)句子對(duì)應(yīng)兩棵不一樣的語法樹,則稱這個(gè)文法是。88、所謂最左推導(dǎo)是指:

。89、上下文沒關(guān)文法的能夠用

四元組

表示,其形式為

G=(V

N,VT,S,P)

。90、后綴式ab+c+d*e-所表達(dá)的式子為(a+b+c)*d-e。91、常用的兩種動(dòng)向存貯分派方法是

分派和

分派。92、LL(K)文法中,第一個(gè)

L表示

從左到右掃描輸入串

,第二個(gè)

L表示產(chǎn)生最左推導(dǎo)

,K表示

在決定語法剖析器每步動(dòng)作時(shí)向前看

K個(gè)輸入符

。93、一個(gè)上下文沒關(guān)文法所含四個(gè)構(gòu)成部分是文法終結(jié)符會(huì)合文法非終結(jié)符會(huì)合開始符號(hào)產(chǎn)生式有限會(huì)合。94、關(guān)于文法

G,僅含終結(jié)符號(hào)的句型稱為

句子

。95、設(shè)有文法

G[E]:E→E+T|E

T|TT→T*F|T/F|FF→(E)|i該文法句型

E+T*F

的句柄是

T*F

。96、后綴式

ab+c+d*e-

所表達(dá)的式子為

。97、文法符號(hào)的屬性有兩種,一種稱為

繼承

屬性,另一種稱為

綜合

屬性,S屬性定義是指僅使用

綜合

屬性的語法制導(dǎo)定義。98、LR(0)項(xiàng)目和

LR(1)項(xiàng)目的差別在于

能否有搜尋符

。99、緊跟在條件轉(zhuǎn)移語句后邊的語句是基本塊的

進(jìn)口

語句。100、若二個(gè)正規(guī)式所表示的

DFA(或正規(guī)集)

同樣,則以為兩者是等價(jià)的。101、僅含終結(jié)符的句型稱為。102、編譯方式與分析程序的根本差別在于能否生成目標(biāo)代碼。(F)103、規(guī)范歸約和規(guī)范推導(dǎo)是互逆的兩個(gè)過程。(T)104、一個(gè)上下文沒關(guān)文法的開始符號(hào)能夠是終結(jié)符或非終結(jié)符。(F)105、逆波蘭表示法表示表達(dá)式時(shí)無需使用括號(hào)。(T)106、符號(hào)表由詞法剖析程序成立,由語法剖析程序使用。(F)107、逆波蘭法表示的表達(dá)式亦稱前綴式。(F)108、代碼生成器的輸入包含中間代碼和符號(hào)表中的信息。(T)109、孤立地考慮一個(gè)基本塊經(jīng)常不可以確立一個(gè)賦值能否真是無用的。(T)110、目標(biāo)代碼生成時(shí),應(yīng)試慮如何充分利用計(jì)算機(jī)的存放器的問題。(T)111、無左遞歸的文法是LL(1)文法。(F)112、一個(gè)句型的直接短語語是獨(dú)一的。(F)113、正規(guī)文法產(chǎn)生的語言都能夠用上下文沒關(guān)文法來描繪。(F)114、對(duì)任何一個(gè)編譯程序來說,產(chǎn)生中間代碼是不行缺乏的一部分。(F)115、一張變換圖只包含有限個(gè)狀態(tài),此中有一個(gè)被以為是初態(tài),最多只有一個(gè)終態(tài)。(F)116、一個(gè)上下文沒關(guān)文法的開始符號(hào)能夠是終結(jié)符或非終結(jié)符。(F)117、一個(gè)文法全部句子的會(huì)合構(gòu)成該文法定義的語言。(T)118、優(yōu)化實(shí)質(zhì)上是對(duì)代碼進(jìn)行等價(jià)變換,變換后的代碼結(jié)構(gòu)不一樣但運(yùn)轉(zhuǎn)結(jié)果同樣。(T)119、算符優(yōu)先剖析法是一種規(guī)范歸約剖析法。(F)120、非終結(jié)符能夠有綜合屬性,但不可以有繼承屬性。(F)121、全部LR剖析器的總控程序都是同樣的,不過剖析表各有不一樣。(T)122、因名字都是用表記符表示的,故名字與表記符沒有差別(F)123、空符號(hào)串的會(huì)合{ε}={}=?。(F)124、非終結(jié)符能夠有綜合屬性,但不可以有繼承屬性。(F)125、終結(jié)符能夠有綜合屬性,也能夠有繼承屬性。(F)126、一張變換圖只包含有限個(gè)狀態(tài),此中有一個(gè)被以為是初態(tài),最多只有一個(gè)終態(tài)。( )127、若一個(gè)句型中出現(xiàn)了某一產(chǎn)生式的右部,則此右部必定是該句型的句柄。(F)129、DAG是一個(gè)可帶環(huán)路的有向圖。(F)130、設(shè)有符號(hào)串x和y,把y的符號(hào)寫在x的符號(hào)以后所得的符號(hào)串,叫做x與y的連接,記為xy。(T)131、對(duì)任何一個(gè)編譯程序來說,產(chǎn)生中間代碼是不行缺乏的一部分。(F)132、對(duì)任何正規(guī)表達(dá)式e,都存在一個(gè)DFAM,知足L(M)=L(e)。(T)133、運(yùn)轉(zhuǎn)時(shí)的DISPLAY表的內(nèi)容是什么它的作用是什么答:內(nèi)容:1、過程R的現(xiàn)行活動(dòng)記錄的地點(diǎn)(sp的現(xiàn)值)2、R的外層Q的最新活動(dòng)記錄的地點(diǎn)3、Q的外層即主程序P的活動(dòng)記錄的地點(diǎn)作用:追蹤每個(gè)外層的最新活動(dòng)記錄的地點(diǎn)134、何謂局部優(yōu)化、循環(huán)優(yōu)化和全局優(yōu)化優(yōu)化工作在編譯的哪個(gè)階段進(jìn)行答:局部優(yōu)化:在基本快內(nèi)的優(yōu)化。循環(huán)優(yōu)化:對(duì)循環(huán)中的代碼進(jìn)行優(yōu)化。全局優(yōu)化:整個(gè)程序范圍內(nèi)的優(yōu)化。在中間代碼優(yōu)化階段。135、常有的儲(chǔ)存分派策略有幾種它們都合適于什么性質(zhì)的語言答:1、靜態(tài)分派策略合用于無動(dòng)向申請(qǐng)內(nèi)存、無可變體積數(shù)組、無遞歸調(diào)用的程序語言(如Fortran)2、動(dòng)向分派策略棧式動(dòng)向分派簡單棧式分派合用于沒有分程序結(jié)構(gòu)、不一樣意程序嵌套定義但同意過程遞歸調(diào)用、同意過程含可變數(shù)組的語言嵌套過程語言的棧式分派合用于沒有分程序結(jié)構(gòu)、同意程序嵌套定義和過程遞歸調(diào)用、同意過程含可變數(shù)組的語言堆式動(dòng)向分派合用于同意程序?yàn)樽兞吭谶\(yùn)轉(zhuǎn)時(shí)動(dòng)向申請(qǐng)和開釋儲(chǔ)存空間的語言136、下邊文法是不是二義文法試說明原因。G[S]:S→SaS|答:二義137、已知文法G(E)E→T|E+TT→F|T*FF→(E)|i給出句型(T*F+i)的最右推導(dǎo)及畫出語法樹;給出句型(T*F+i)的短語、素短語。1)E→E+T→E+i→T+i→T*F+I樹略2)短語:T*F+iT*Fi素短語:T*Fi138、把算術(shù)表達(dá)式-(a+b)*(b+c)翻譯成:后綴表示ab+bc+*@(b)語法樹圖略(c)有向無環(huán)圖圖略四元式三地點(diǎn)代碼四地點(diǎn)代碼:(+,a,b,t1)(+,b,c,t2)(*,t1,t2,t3)(@,t3,-,t4)139、DFA與NFA的差別答:1、DFA弧上不一樣意有ε出現(xiàn),NFA同意2、DFA中每個(gè)狀態(tài)S和輸入符號(hào)a最多有一條邊走開S,NFA有多條3、NFA能夠有多個(gè)初態(tài),DFA只有一個(gè)140、設(shè)已結(jié)構(gòu)出文法G(S):SS(S)S的LR剖析表以下狀態(tài)ACTIONGOTO()#S0r2r211S2Acc2r2r233S4S54r2r265r1r16S4S77r1r1假定輸入串為( )( ),請(qǐng)給出LR剖析過程(即狀態(tài),符號(hào),輸入串的變化過程)。步驟狀態(tài)符號(hào)輸入串步驟狀態(tài)符號(hào)輸入串10()()$201S()()$3012S()()$40123S()()$501235S( )()$601S()$7012S()$80123S(S)$901235S(S)$1001S$141、對(duì)符號(hào)表的基本操作有幾種,分別是什么答:5類。1、填寫名稱2、查找名字3、接見信息4、填寫改正信息5、刪除(或許:4類。成立、插入、查找、刪除)142、給定代碼段以下,求出按四種不一樣方式進(jìn)行參數(shù)傳達(dá)后,變量a的值procedureP(w,x,y,z);beginy:=y*w;z:=z+x;endbegina:=5;b:=3;P(a+b,a-b,a,a);write(a);end傳值:5傳地點(diǎn):42得結(jié)果:7傳名:77143、目標(biāo)代碼有哪幾種形式生成目標(biāo)代碼時(shí)往常應(yīng)試慮哪幾個(gè)問題答:1、匯編語言2、機(jī)器語言又可分為a可立刻履行的機(jī)器語言b可重定位的機(jī)器語言需要考慮:1.、如何使生成的目標(biāo)代碼最短2、如何分派存放器的使用144、下邊的推導(dǎo)SrmrmAbwrmlbw中,最后一步用的是Al,分別指出LL(1)方法和LR(1)方法在掃描到此句型的什么地點(diǎn)決定用此產(chǎn)生式(5分)P79答:LL(1)掃描到l的時(shí)候決定用此產(chǎn)生式;LR(1)掃描到b的時(shí)候決定使用次產(chǎn)生式145、結(jié)構(gòu)一個(gè)最簡DFA,它接受正規(guī)式ab(a|b)*。給出文法G[S]:S→SaA|AA→AbB|BB→cSd|e證明AacAbcBaAdbed是文法G[S]的一個(gè)句型;請(qǐng)寫出該句型的全部短語、素短語以及句柄。答:1)這里用最右推導(dǎo)表示,省略樹S→SaA→SaB→SacSd→SacAd→SacAbBd→SacAbed→SacAbBbed→SacAbcSdbedSacAbcSaAdbed→SacAbcAaAdbed→SacAbcBaAdbed→AacAbcBaAdbed2)短語:AacAbcBaAdbedcAbcBaAdbedAbcBaAdbeAbcBaAdcBaAdBaAeA素短語:BaAe句柄:A146、寫出表達(dá)式a+b*(c-d)對(duì)應(yīng)的逆波蘭表示、三元式三地點(diǎn)代碼序列和抽象語法樹。147、什么是活動(dòng)記錄它主要由哪些內(nèi)容構(gòu)成148、對(duì)以下四元式序列生成目標(biāo)代碼(10分)T=A-BS=C+DW=E-FU=W/TV=U*S此中,V是基本塊出口的活躍變量,R0和R1是可用存放器。答MOVR0,ASUBR0,BMOVR1,AADDR1,DMOVS,R1MOvR1,ESUBR1,F(xiàn)DIVR1,R0MULR1,S149、設(shè)有以下的三地點(diǎn)碼(四元式)序列:ReadN∶=NJ∶=2————————L1:ifI≤JgotoL3————————L2:I∶=I-JifI>JgotoL2————————ifI=0gotoL4————————J∶=J+1∶=NgotoL1————————L3:Print′YES′Return————————L4:Print′NO′Return1)、對(duì)題中代碼區(qū)分基本塊,并給每個(gè)基本塊一個(gè)序號(hào)2)、畫出基本塊會(huì)合的控制流圖,每個(gè)基本塊就用(1)小題中的序號(hào)表示。3)、如有循環(huán)的話,列出構(gòu)成每個(gè)循環(huán)的結(jié)點(diǎn)。150、已知文法G(V):V→N|N[]EE→V|V+EN→i(1)給出與G(V)等價(jià)的LL(1)文法G'(V);V→NV’V’→[E]|εE→VE’E’→+E|εN→i求文法G'(V)的每個(gè)非終結(jié)符的FIRST會(huì)合和FOLLOW會(huì)合;First(V)={i}First(V’)={[,ε}First(E)={i}First(E’)={+,ε}First(N)={i}Follow(V)={$,+,]}Follow(V’)={$,+,]}Follow(E)={]}Follow(E’)={]}Follow(N)={[,$,+}(3)結(jié)構(gòu)文法G'(V)的LL(1)剖析表。+[]i$VV→NV’V’V’→εV’→[E]V’→εV’→εEE→VE’E’E’→+EE’→εN→iN151、考慮下邊的三地點(diǎn)語句序列:b:=1b:=2ifw<=xgotoL2————————e:=bgotoL2————————L1:gotoL3————————L2:c:=3b:=4c:=6————————L3:ify<=zgotoL4————————gotoL5————————L4:g:=g+1h:=8gotoL1————————L5:h:=91)、在該代碼頂用水平的橫線將代碼分紅基本塊,并給每個(gè)基本塊一個(gè)序號(hào)。2)、畫出該代碼的控制流圖,每個(gè)基本塊就用(1)小題中的序號(hào)表示。3)、如有循環(huán)的話,列出構(gòu)成每個(gè)循環(huán)的結(jié)點(diǎn)。152、關(guān)于文法G(S):SbMb(L|aLMa)寫出句型b(Ma)b的最右推導(dǎo)并畫出剖析樹。S→bMb→b(Lb→b(Ma)b寫出上述句型的短語,直接短語和句柄。短語:b(Ma)b(Ma)Ma)句柄:Ma)153、LL(1)剖析法對(duì)文法有哪些要求對(duì)文法中隨意A→α|β型產(chǎn)生式需知足:First(α)∩First(β)=空集若β=>ε則First(α)∩Follow(A)=空集154、寫出語句a:=b*(-c)+b*(-c)的后綴式、抽象語法樹、DAG圖、四元式三地點(diǎn)代碼和三元式三地點(diǎn)代碼。155、設(shè)有文法G[A]:A→iB*eB→SB|εS→[eC]|.iC→eC|ε判斷該文法能否為LL(1)文法假如則給出它的LL(1)剖析表,不然說明原因。(20分)First(A)={i}First(B)={[,ε,.}First(S)={[,.}First(C)={e,ε}Follow(A)={$}Follow(B)={*}Follow(S)={*}Follow(C)={]}對(duì)產(chǎn)生式B→SB|εFirst(SB)=First(S)={[,.}First(ε)={ε}因此First(SB)∩First(ε)=空集First(SB)∩Follow(B)=空集對(duì)產(chǎn)生式S→[eC]|.iFirst([eC])={[}First(.i)={.i}因此First([eC])∩First(.i)=空集對(duì)產(chǎn)生式C→eC|εFirst(eC){e}First(ε)={ε}因此First(eC)∩First(ε)=空集First(eC)∩Follow(C)=空集因此此文法是LL(1)文法.*i[]e$AA→iB*eBB→SBB→εB→SBSS→.iS→[eC]CC→|εC→eC156、結(jié)構(gòu)一個(gè)DFA,它接受∑={0,1}上能被5整除的二進(jìn)制數(shù)。157、正規(guī)式(0|1)*和((|0)1*)*能否等價(jià),說明原因。158、寫出字母表={a,b}上語言L={w|w的最后兩個(gè)字母是aa或bb}的正規(guī)式,并畫出接受該語言的最簡DFA。(a|b)*aa|bb159、文法G(S)及其LR剖析表以下,請(qǐng)給出串baba$的剖析過程。(1)S→DbB(2)D→d(3)D→ε(4)B→a(5)B→Bba(6)B→εLR剖析表ACTIONGOTObda$SBD0r3s3121accs4r24r6S5r665r4r46s7r17S88r5r5(注:答案格式為步驟棧輸入串動(dòng)作)步驟棧輸入串動(dòng)作)10baba$按B→ε規(guī)約20D2baba$移進(jìn)30D2b4aba$移進(jìn)40D2b4a5ba$按B→a規(guī)約50D2b4B6ba$移進(jìn)60D2b4B6b7a$移進(jìn)70D2b4B6b7a8$按B→Bba規(guī)約80D2b4B6$按S→DbB規(guī)約90S1$接受160、已知文法G(A):A→aABl|aB→Bb|d(1)除去文法中的左遞歸,提取公共左因子,給出與G(A)等價(jià)的LL(1)文法G'(A);求文法G'(A)的每個(gè)非終結(jié)符的FIRST會(huì)合和FOLLOW會(huì)合;結(jié)構(gòu)文法G'(A)的LL(1)剖析表。答:1)A→aA’A’→ABl|εB→dB’B’→bB’|ε2)First(A)={a}First(B)=maoi6eaFirst(A

’)={a,

ε}First(B

’)={b,

ε}Follow(A)={$,d}

Follow(B)={l}Follow(A

’)={$,d}Follow(B

’)={l}3)a

b

l

d

$A

A→aA’A’

A’→ABl

A’→ε

A’→εB

B’

→bB’B’

B’

→ε161、設(shè)文法G(S):→S+aF|aF|+aFF→*aF|*a除去左遞歸和回溯;計(jì)算每個(gè)非終結(jié)符的FIRST和FOLLOW;結(jié)構(gòu)展望剖析表。答1、S→+aFS’|aFS’S’→+aFS’|εF→*aF’F’→F|ε2、Fist(S)={a,+}Fist(S’)={+,ε}Fist(F)={*}Fist(F’)={*,ε}Follow(S)={$}Follow(S’)={$}Follow(F)={$,+}Follow(F’)={$,+}3、+a*$SS→+aFS’S→a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論