資源描述:
《編譯原理超強復(fù)習(xí)綱領(lǐng)(終)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、一.名詞解釋:1)前綴:是指符號串任意首部。2)可歸前綴:是指規(guī)范句型的一個前綴,這種前綴包含句柄且不含句柄之后的任何符號。3)活前綴:規(guī)范句型的一個前綴,這種前綴不含句柄之后的任何符號?;蚪o定文法規(guī)范句型的可歸前綴的任意首部。4)簡單短語:設(shè)G[Z]是給定文法,w=xuy∈V+,為該文法的句型,如果滿足下面兩個條件:①ZxUy;②UTu;則稱句型xuy中的子串u是句型xuy的簡單短語。5)掃描遍:指編譯程序?qū)υ闯绦蚧蛑虚g代碼程序從頭到尾掃描一次。6)句柄:給定句型中的最左簡單短語就是句柄。7)句型:設(shè)G是一個給定的文法,S是文
2、法的開始符號,如果Sx(其中x∈V*),則稱x是文法的一個句型。*T8)句子:設(shè)G是一個給定的文法,S是文法的開始符號,如果Sx(其中x∈VT*),則稱x是文法的一個句子。9)非終結(jié)符:出現(xiàn)在文法產(chǎn)生式的左部且能派生出符號或符號串的那些符號稱為非終結(jié)符號。10)終結(jié)符:出現(xiàn)在文法產(chǎn)生式的右部且不能派生出符號或符號串的那些符號稱為終結(jié)符號。11)屬性文法:個屬性文法形式的定義為一個三元組AG,AG=(G,V,E)。其中G為一個上下文無關(guān)文法;V為屬性的有窮集;E為一組語義規(guī)則。12)語法制導(dǎo)翻譯:語法制導(dǎo)翻譯就是在語法分析的過程中
3、,當(dāng)進(jìn)行推導(dǎo)或歸約時同步完成附加在所使用的產(chǎn)生式上的語義規(guī)則描述的動作,從而實現(xiàn)語義處理。13)后綴式:種把運算量(操作數(shù))寫在前面,把算符寫在后面(后綴)的表示法。14)短語:設(shè)G[Z]是給定文法,w=xuy∈V+,為該文法的句型,如果滿足下面兩個條件:①ZxUy;②Uu;則稱句型xuy中的子串u是句型xuy的短語?;颍壕湫驼Z法樹的全部子樹的葉從左到右排列起來構(gòu)成的符號串均是句型的短語。15)基本塊:源程序或者中間代碼程序中只有一個入口和一個出口的順序執(zhí)行的代碼段。16)語義規(guī)則:對于文法的每個產(chǎn)生式都配備了一組屬性的計算規(guī)則
4、,稱為語義規(guī)則。17)語法分析:按文法的產(chǎn)生式識別輸入的符號串是否為一個句子的分析過程。18)四元式:是一個帶有四個域的記錄結(jié)構(gòu),這四個域分別稱為操作符域、左運算對象域、右運算對象域及運算結(jié)果域。1)什么是句子?什么是語言?*T解答:句子:設(shè)G是一個給定的文法,S是文法的開始符號,如果Sx(其中x∈VT*),則稱x是文法的一個句子。語言:語言是句子的集合?;颉O(shè)G[S]是給定文法,則由文法G所定義的語言L(G)可描述為:L(G)={x│Sx,x∈VT*}。2)DFA與NFA有何區(qū)別?解答:DFA與NFA的區(qū)別表現(xiàn)為兩個方面:一
5、是NFA可以有若干個開始狀態(tài),而DFA僅只有一個開始狀態(tài)。另一方面,DFA的映象M是從K×∑到K,而NFA的映象M是從K×∑到K的子集,即映象M將產(chǎn)生一個狀態(tài)集合(可能為空集),而不是單個狀態(tài)。3)自頂向下的語法分析方法的基本思想是什么?解答:從文法的開始符號開始,根據(jù)給定的輸入串并按照文法的產(chǎn)生式一步一步的向下進(jìn)行直接推導(dǎo),試圖推導(dǎo)出文法的句子,使之與給定的輸入串匹配。4)自底向上的語法分析方法的基本思想是什么?解答:從給定的輸入串(終結(jié)符串)開始,根據(jù)文法的規(guī)則一步一步的向上進(jìn)行直接歸約,試圖歸約到文法的開始符號。5)一個上
6、下文無關(guān)文法G包括哪四個組成部分?解答:一組非終結(jié)符號,一組終結(jié)符號,一個開始符號,以及一組產(chǎn)生式。6)在自底向上的語法分析方法中,分析的關(guān)鍵是什么?解答:關(guān)鍵是尋找句柄。7)在自頂向下的語法分析方法中,分析的關(guān)鍵是什么?解答:關(guān)鍵是選擇候選式。8)編譯程序中語法分析器接收以什么為單位的輸入?解答:接收以單詞為單位的輸入。9)若一個文法是遞歸的,則它所產(chǎn)生的語言的句子是可枚舉的嗎?解答:它所產(chǎn)生的語言的句子不是可枚舉的,而是無窮多個。10)編譯程序生成的目標(biāo)程序是不是一定是機器語言的程序?解答:不一定是機器語言的程序。11)詞法
7、分析器是用于做什么的?解答:詞法分析器是用于識別單詞的。12)“用高級語言書寫的源程序都必須通過編譯,產(chǎn)生目標(biāo)代碼后才能投入運行”這種說法正確嗎?解答:不正確。13)把匯編語言程序翻譯成機器可執(zhí)行的目標(biāo)程序的工作是由什么完成的?解答:由匯編器(匯編程序)完成的。14)圖示運行時存儲空間的劃分(分為哪幾個區(qū))。解答:一般分為靜態(tài)區(qū)和動態(tài)區(qū):程序代碼區(qū)、靜態(tài)數(shù)據(jù)區(qū)、棧區(qū)和堆區(qū)。15)詞法分析的主要任務(wù)是什么?解答:詞法分析器的任務(wù)是對構(gòu)成源程序的字符串從左到右逐個字符逐個字符地進(jìn)行掃描,依次把它們識別為一個一個具有獨立意義的單詞,并
8、確定其屬性,再轉(zhuǎn)換為長度統(tǒng)一的屬性字并輸出。16)常用的中間語言種類有哪幾種?解答:常用的中間語言種類有逆波蘭表示、三元式、四元式和樹形表示。17)文法G所描述的語言是什么的集合?解答:是由文法的開始符號推出的所有終結(jié)符串的集合。或說是句子的集合。18)喬姆斯基