導航:首頁 > 編程語言 > 編譯程序中的遍

編譯程序中的遍

發布時間:2024-06-16 03:52:04

❶ 編譯程序和解釋程序都是什麼意思

1、編譯程序是把用高級程序設計語言或計算機匯編語言書寫的源程序,翻譯成等價的機專器語言格式屬目標程序的翻譯程序,屬於採用生成性實現途徑實現的翻譯程序。編譯程序以高級程序設計語言書寫的源程序作為輸入,而以匯編語言或機器語言表示的目標程序作為輸出;編譯出的目標程序通常還要經歷運行階段,以便在運行程序的支持下運行,加工初始數據,算出所需的計算結果。

2、解釋程序是高級語言翻譯程序的一種,它將源語言書寫的源程序作為輸入,解釋一句後就提交計算機執行一句,並不形成目標程序。就像外語翻譯中的「口譯」一樣,說一句翻一句,不產生全文的翻譯文本。

(1)編譯程序中的遍擴展閱讀:

編譯程序的實現演算法較為復雜。這是因為它所翻譯的語句與目標語言的指令不是一一對應關系,而是一多對應關系;同時也因為它要處理遞歸調用、動態存儲分配、多種數據類型,以及語句間的緊密依賴關系。但是,由於高級程序設計語言書寫的程序具有易讀、易移植和表達能力強等特點,編譯程序廣泛地用於翻譯規模較大、復雜性較高、且需要高效運行的高級語言書寫的源程序。

❷ as=bbb,a=bc,s=cc,asb=( )c.

習題一、單項選擇題1、將編譯程序分成若干個「遍」是為了。a.提高程序的執行效率b.使程序的結構更加清晰c.利用有限的機器內存並提高機器的執行效率d.利用有限的機器內存但降低了機器的執行效率2、構造編譯程序應掌握。a.源程序b.目標語言c.編譯方法d.以上三項都是3、變數應當。a.持有左值b.持有右值c.既持有左值又持有右值d.既不持有左值也不持有右值4、編譯程序絕大多數時間花在上。a.出錯處理b.詞法分析c.目標代碼生成d.管理表格5、不可能是目標代碼。a.匯編指令代碼b.可重定位指令代碼c.絕對指令代碼d.中間代碼6、使用可以定義一個程序的意義。a.語義規則b.詞法規則c.產生規則d.詞法規則7、詞法分析器的輸入是。a.單詞符號串b.源程序c.語法單位d.目標程序8、中間代碼生成時所遵循的是-。a.語法規則b.詞法規則c.語義規則d.等價變換規則9、編譯程序是對。a.匯編程序的翻譯b.高級語言程序的解釋執行c.機器語言的執行d.高級語言的翻譯10、語法分析應遵循。a.語義規則b.語法規則c.構詞規則d.等價變換規則解答1、將編譯程序分成若干個「遍」是為了使編譯程序的結構更加清晰,故選b。2、構造編譯程序應掌握源程序、目標語言及編譯方法等三方面的知識,故選d。3、對編譯而言,變數既持有左值又持有右值,故選c。4、編譯程序打交道最多的就是各種表格,因此選d。5、目標代碼包括匯編指令代碼、可重定位指令代碼和絕對指令代碼3種,因此不是目標代碼的只能選d。6、詞法分析遵循的是構詞規則,語法分析遵循的是語法規則,中間代碼生成遵循的是語義規則,並且語義規則可以定義一個程序的意義。因此選a。7、b8、c9、d10、c二、多項選擇題1、編譯程序各階段的工作都涉及到。a.語法分析b.表格管理c.出錯處理d.語義分析e.詞法分析2、編譯程序工作時,通常有階段。a.詞法分析b.語法分析c.中間代碼生成d.語義檢查e.目標代碼生成解答1.b、c2.a、b、c、e三、填空題1、解釋程序和編譯程序的區別在於。2、編譯過程通常可分為5個階段,分別是、語法分析、代碼優化和目標代碼生成。3、編譯程序工作過程中,第一段輸入是,最後階段的輸出為程序。4、編譯程序是指將程序翻譯成程序的程序。解答是否生成目標程序2、詞法分析中間代碼生成3、源程序目標代碼生成4、源程序目標語言一、單項選擇題1、文法G:S→xSx|y所識別的語言是。a.xyxb.(xyx)*c.xnyxn(n≥0)d.x*yx*2、文法G描述的語言L(G)是指。a.L(G)={α|S+⇒α,α∈VT*}b.L(G)={α|S*⇒α,α∈VT*}c.L(G)={α|S*⇒α,α∈(VT∪VN*)}d.L(G)={α|S+⇒α,α∈(VT∪VN*)}3、有限狀態自動機能識別。a.上下文無關文法b.上下文有關文法c.正規文法d.短語文法4、設G為算符優先文法,G的任意終結符對a、b有以下關系成立。a.若f(a)>g(b),則a>bb.若f(a)g)(b)或f(a)0}c.{anbmcmdn|n,m≥0}d.{anbncmdm|n,m≥0}e.{anbncndn|n≥0}5、自下而上的語法分析中,應從開始分析。a.句型b.句子c.以單詞為單位的程序d.文法的開始符e.句柄6、對正規文法描述的語言,以下有能力描述它。a.0型文法b.1型文法c.上下文無關文法d.右線性文法e.左線性文法解答1、e、a、c2、a、c、e3、b、c、d4、a、c5、b、c6、a、b、c、d、e三、填空題1、文法中的終結符和非終結符的交集是。詞法分析器交給語法分析器的文法符號一定是,它一定只出現在產生式的部。2、最左推導是指每次都對句型中的非終結符進行擴展。3、在語法分析中,最常見的兩種方法一定是分析法,另一是分析法。4、採用語法分析時,必須消除文法的左遞歸。5、樹代表推導過程,樹代表歸約過程。6、自下而上分析法採用、歸約、錯誤處理、等四種操作。7、Chomsky把文法分為種類型,編譯器構造中採用和文法,它們分別產生和語言,並分別用和自動機識別所產生的語言。解答1、空集終結符右2、最左3、自上而上自下而上4、自上而上5、語法分析6、移進接受7、42型3型上下文無關語言正規語言下推自動機有限四、判斷題1、文法S→aS|bR|ε描述的語言是(a|bc)*()R→cS2、在自下而上的語法分析中,語法樹與分析樹一定相同。()3、二義文法不是上下文無關文法。()4、語法分析時必須先消除文法中的左遞歸。()5、規范歸約和規范推導是互逆的兩個過程。()6、一個文法所有句型的集合形成該文法所能接受的語言。()解答1、對2、錯3、錯4、錯5、錯6、錯五、簡答題1、句柄2、素短語3、語法樹4、歸約5、推導[解答]1、句柄:一個句型的最左直接短語稱為該句型的句柄。2、素短語:至少含有一個終結符的素短語,並且除它自身之外不再含任何更小的素短語。3、語法樹:滿足下面4個條件的樹稱之為文法G[S]的一棵語法樹。①每一終結均有一標記,此標記為VN∪VT中的一個符號;②樹的根結點以文法G[S]的開始符S標記;③若一結點至少有一個直接後繼,則此結點上的標記為VN中的一個符號;④若一個以A為標記的結點有K個直接後繼,且按從左至右的順序,這些結點的標記分別為X1,X2,…,XK,則A→X1,X2,…,XK,必然是G的一個產生式。4、歸約:我們稱αγβ直接歸約出αAβ,僅當A→γ是一個產生式,且α、β∈(VN∪VT)*。歸約過程就是從輸入串開始,反復用產生式右部的符號替換成產生式左部符號,直至文法開始符。5、推導:我們稱αAβ直接推出αγβ,即αAβÞαγβ,僅當A→γ是一個產生式,且α、β∈(VN∪VT)*。如果α1Þα2Þ…Þαn,則我們稱這個序列是從α1至α2的一個推導。若存在一個從α1αn的推導,則稱α1可推導出αn。推導是歸約的逆過程。六、問答題1、給出上下文無關文法的定義。[解答]一個上下文無關文法G是一個四元式(VT,VN,S,P),其中:●VT是一個非空有限集,它的每個元素稱為終結符號;●VN是一個非空有限集,它的每個元素稱為非終結符號,VT∩VN=Φ;●S是一個非終結符號,稱為開始符號;●P是一個產生式集合(有限),每個產生式的形式是P→α,其中,P∈VN,α∈(VT∪VN)*。開始符號S至少必須在某個產生式的左部出現一次。2、文法G[S]:S→aSPQ|abqqP→PQbP→bbbQ→bccQ→cc(1)它是Chomsky哪一型文法?(2)它生成的語言是什麼?[解答](1)由於產生式左部存在終結符號,且所有產生式左部符號的長度均小於等於產生式右部的符號長度,所以文法G[S]是Chomsky1型文法,即上下文有關文法。(2)按產生式出現的順序規定優先順序由高到低(否則無法推出句子),我們可以得到:SÞabQÞabcSÞaSPQÞaabQPQÞaabPQQÞaabbQQÞaabbcQÞaabbccSÞaSPQÞaaSPQPQÞaaabQPQPQÞaaabPQQPQÞaaabPQPQQÞaaaPPQQQÞaaabbPqqqÞaaabbQQQÞaaabbbcQQÞaaabbbccQÞaaabbbccc……於是得到文法G[S]生成的語言L={anbncn|n≥1}3、按指定類型,給出語言的文法。L={aibj|j>i≥1}的上下文無關文法。【解答】(1)由L={aibj|j>i≥1}知,所求該語言對應的上下文無關文法首先應有S→aSb型產生式,以保證b的個數不少於a的個數;其次,還需有S→Sb或S→bS型的產生式,用以保證b的個數多於a的個數;也即所求上下文無關文法G[S]為:G[S]:S→aSb|Sb|b4、有文法G:S→aAcB|BdA→AaB|cB→bScA|b(1)試求句型aAaBcbbdcc和aAcbBdcc的句柄;(2)寫出句子acabcbbdcc的最左推導過程。【解答】(1)分別畫出對應兩句型的語法樹,如圖2-8-2所示句柄:AaBBd圖2-8-2語法樹(2)句子acabcbbdcc的最左推導如下:SÞaAcBÞaAaBcBÞacaBcBÞacabcBÞacabcbScAÞacabcbBdcAÞacabcbbdcAÞacabcbbdcc5、對於文法G[S]:S→(L)|aS|aL→L,S|S(1)畫出句型(S,(a))的語法樹。(2)寫出上述句型的所有短語、直接短語、句柄和素短語。【解答】(1)句型(S,(a))的語法樹如圖2-8-3所示(2)由圖2-8-3可知:①短語:S、a、(a)、S,(a)、(S,(a));②直接短語:a、S;③句柄:S;④素短語:素短語可由圖2-8-3中相鄰終結符之間的優先關系求得,即;因此素短語為a。6、考慮文法G[T]:T→T*F|FF→F↑P|PP→(T)|i證明T*P↑(T*F)是該文法的一個句型,並指出直接短語和句柄。【解答】首先構造T*P↑(T*F)的語法樹如圖2-8-4所示。由圖2-8-4可知,T*P↑(T*F)是文法G[T]的一個句型。直接短語有兩個,即P和T*F;句柄為P。一、單項選擇題1、詞法分析所依據的是。a.語義規則b.構詞規則c.語法規則d.等價變換規則2、詞法分析器的輸出結果是。a.單詞的種別編碼b.單詞在符號表中的位置c.單詞的種別編碼和自身值d.單詞自身值3、正規式M1和M2等價是指。a.M1和M2的狀態數相等b.M1和M2的有向弧條數相等c.M1和M2所識別的語言集相等d.M1和M2狀態數和有向弧條數相等4、狀態轉換圖(見圖3-6-1)接受的字集為。a.以0開頭的二進制數組成的集合b.以0結尾的二進制數組成的集合c.含奇數個0的二進制數組成的集合d.含偶數個0的二進制數組成的集合5、詞法分析器作為獨立的階段使整個編譯程序結構更加簡潔、明確,因此,。a.詞法分析器應作為獨立的一遍b.詞法分析器作為子程序較好c.詞法分析器分解為多個過程,由語法分析器選擇使用d.詞法分析器並不作為一個獨立的階段解答1、b2、c3、c4、d5、b二、多項選擇題1、在詞法分析中,能識別出。a.基本字b.四元式c.運算符d.逆波蘭式e.常數2、令∑={a,b},則∑上所有以b開頭,後跟若干個ab的字的全體對應的正規式為。a.b(ab)*b.b(ab)+c.(ba)*bd.(ba)+be.b(a|b)解答1、a、c、e2、a、b、d三、填空題1、確定有限自動機DFA是的一個特例。2、若二個正規式所表示的相同,則認為二者是等價的。3、一個字集是正規的,當且僅當它可由所。解答1、NFA2、正規集3、DFA(NFA)所識別四、判斷題1、一個有限狀態自動機中,有且僅有一個唯一終態。()2、設r和s分別是正規式,則有L(r|s)=L(r)|L(s)。()3、自動機M和M′的狀態數不同,則二者必不等價。()4、確定的自動機以及不確定的自動機都能正確地識別正規集。()5、對任意一個右線性文法G,都存在一個NFAM,滿足L(G)=L(M)。()6、對任意一個右線性文法G,都存在一個DFAM,滿足L(G)=L(M)。()7、對任何正規表達式e,都存在一個NFAM,滿足L(G)=L(e)。()8、對任何正規表達式e,都存在一個DFAM,滿足L(G)=L(e)。()解答1、2、3、錯4、5、6、7、8、正確五、基本題1、設M=({x,y},{a,b},f,x,{y})為一非確定的有限自動機,其中f定義如下:f(x,a)={x,y}f(x,b)={y}f(y,a)=φf(y,b)={x,y}試構造相應的確定有限自動機M′。解答:對照自動機的定義M=(S,Σ,f,S0,Z),由f的定義可知f(x,a)、f(y,b)均為多值函數,所以是一非確定有限自動機,先畫出NFAM相應的狀態圖,如圖3-6-2所示。用子集法構造狀態轉換矩陣表3-6-3所示。IIaIb{x}{x,y}{y}{y}—{x,y}{x,y}{x,y}{x,y}將轉換矩陣中的所有子集重新命名而形成表3-6-4所示的狀態轉換矩陣。表3-6-4狀態轉換矩陣ab0211—2222即得到M′=({0,1,2},{a,b},f,0,{1,2}),其狀態轉換圖如圖3-6-5所示。將圖3-6-5的DFAM′最小化。首先,將M′的狀態分成終態組{1,2}與非終態組{0};其次,考察{1,2}。由於{1,2}a={1,2}b={2}⊂{1,2},所以不再將其劃分了,也即整個劃分只有兩組{0},{1,2}:令狀態1代表{1,2},即把原來到達2的弧都導向1,並刪除狀態2。最後,得到如圖3-6-6所示化簡DFAM′。2、對給定正規式b*(d|ad)(b|ab)+,構造其NFAM;解答:首先用A+=AA*改造正規式得:b*(d|ad)(b|ab)(b|ab)*;其次,構造該正規式的NFAM,如圖3-6-7所示。求採納為滿意回答。希望能解決您的問題。

閱讀全文

與編譯程序中的遍相關的資料

熱點內容
coreldrawx5免費視頻教程 瀏覽:725
網站引導頁面源碼 瀏覽:234
個人簡歷範文word 瀏覽:220
uc下載的視頻怎樣提取到文件 瀏覽:499
英雄下載下載最新版本2015下載安裝 瀏覽:433
NX深孔鑽編程替換面如何操作 瀏覽:725
手機怎麼刪除pdf文件 瀏覽:256
蘋果手機沒有efs文件夾怎麼辦 瀏覽:723
metro軟體在哪個文件夾 瀏覽:69
怎麼用手機登錄編程貓 瀏覽:400
文本md204顯示器如何編程 瀏覽:705
如何將表中重復數據標記 瀏覽:859
中級資料庫系統工程師應用技術考什麼 瀏覽:404
博途編程如何設置停止鍵 瀏覽:409
python3刪除文件內容 瀏覽:754
如何優化seo數據分析 瀏覽:132
64位win7下部分32位程序不能運行 瀏覽:206
dnf90版本劍魂鈍器流 瀏覽:649
陌秀直播蘋果怎麼下載ipad 瀏覽:732
簡述網路直接市場調查方式有哪些 瀏覽:683

友情鏈接