


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、名詞解釋題:Dis play表:嵌套層次顯示表因此,當(dāng)一個過程運行時必 display表就是用于登記每個由于過程嵌套允許內(nèi)層過程引用外層過程定義的數(shù)據(jù), 須跟蹤它的所有外層過程的最新活動記錄起始地址, 外層過程的最新活動記錄起始地址。LL(1)文法若文法的任何兩個產(chǎn)生式 A Ta | P都滿足下面兩個條件:(1)FIRST© ) C FIRST© ) =(2) 若E ,那么 FIRST© ) C FOLLOW( A )=)。我們把滿足這兩個條件的文法叫做LL(1)文法,其中的第一個 L代表從左向右掃描輸入,第二個 L表示產(chǎn)生最左推導(dǎo),1代表在決定分析器的每步 動作
2、時向前看一個輸入符號。除了沒有公共左因子外,LL(1)文法還有一些明顯的性質(zhì),它不是二義的,也不含左遞歸。LR(0)分析器 所謂LR(0)分析,是指從左至右掃描和自底向上的語法分析,且在分析的每一步, 只須根據(jù)分析棧當(dāng)前已移進(jìn)和歸約出的全部文法符號,并至多再向前查看 0個輸入符號,就能確定相對于某一產(chǎn)生式左部符號的句柄是否已在分析棧的頂部形成,從而也就可以確定當(dāng)前所應(yīng)采取的分析動作(是移進(jìn)還是按某一產(chǎn)生式進(jìn)行歸約等編譯程序大致有哪幾種開發(fā)技術(shù)?答案: (1)自編譯(2)交叉編譯 (3)自展 (4)移植: 編譯程序的工作分為那幾個階段? 答:詞法分析、語法分析和語義分析是對源程序進(jìn)行的分析(稱為
3、編譯程序的前端),(稱為而中間代碼生成、代碼優(yōu)化和代碼生成三個階段合稱為對源程序進(jìn)行綜合 編譯程序的后端),它們從源程序的中間表示建立起和源程序等價的目標(biāo)程序。 編譯程序的實現(xiàn)應(yīng)考慮的問題有那些?答案: 編譯程序的實現(xiàn)應(yīng)考慮:開發(fā)周期、目標(biāo)程序的效率、可移植性、可調(diào)試性、可維 護(hù) 性、可擴(kuò)充性等。編譯程序和高級語言有什么區(qū)別_?答:用匯編語言或高級語言編寫的程序,必須先送入計算機(jī),經(jīng)過轉(zhuǎn)換成用機(jī)器 語言表示的目標(biāo)程序(這個過程即編譯),才能由計算機(jī)執(zhí)行。執(zhí)行轉(zhuǎn)換過程的程序叫編譯程序。匯編程序是指沒有編譯過的匯編語言源文件。編譯程序轉(zhuǎn) 換過的叫目標(biāo)程序,也就是機(jī)器語言。編譯程序的工作情況有三種:
4、匯編型、解釋型和編譯型。匯編型編譯程序用來 將匯編語言編寫的程序,按照一一對應(yīng)的關(guān)系,轉(zhuǎn)換成用機(jī)器語言表示的程序。 解釋型編譯程序?qū)⒏呒壵Z言程序的一個語句,先解釋成為一組機(jī)器語言的指令, 然后立即執(zhí)行,執(zhí)行完了,取下一組語句解釋和執(zhí)行,如此繼續(xù)到完成一個程序 止。用解釋型編譯程序,執(zhí)行速度很慢,但可以進(jìn)行人和計算機(jī)的”對話”,隨時可以修改高級語言的程序。BASIC語言就是解釋型高級語言。編譯型編譯程序?qū)⒓壵Z言編寫的程序,一次就會部翻譯成機(jī)器語言表示的程序,而且過程進(jìn)行很快, 在過程中,不能進(jìn)行人機(jī)對話修改。FORTRAN語言就是編譯型高級語言。編譯過程中可進(jìn)行的優(yōu)化如何分類? 答案: 依據(jù)優(yōu)化
5、所涉及的程序范圍,可以分為:局部優(yōu)化、循環(huán)優(yōu)化和全局優(yōu)化。詞法分析 詞法分析的主要任務(wù)是從左向右掃描每行源程序的符號,按照詞法規(guī)則 從構(gòu)成源程序的字符串中識別出一個個具有獨立意義的最小語法單位,并轉(zhuǎn)換成統(tǒng)一的內(nèi)部表示(token),送給語法分析程序。從優(yōu)化的范圍的角度,優(yōu)化可以分哪兩類?對循環(huán)的優(yōu)化可以有哪三種?答:從優(yōu)化的范圍的角度,優(yōu)化可以分為局部優(yōu)化和全局優(yōu)化兩類; 對循環(huán)的優(yōu)化有三種:循環(huán)不變表達(dá)式外提、歸納變量刪除與計算強 度削減。對下列錯誤信息,請指出可能是編譯的哪個階段(詞法分析、語法分析、語義分析、代碼生成)報告的。(1)else沒有匹配的if(2)數(shù)組下標(biāo)越界(3)使用的函數(shù)
6、沒有定義(4)在數(shù)中出現(xiàn)非數(shù)字字符答案:(1)語法分析(2)語義分析(3)語法分析(4)詞法分析何謂代碼優(yōu)化?進(jìn)行優(yōu)化所需要的基礎(chǔ)是什么?答案:對代碼進(jìn)行等價變換, 使得變換后的代碼運行結(jié)果與變換前代碼運行結(jié)果相同, 運行速度加快或占用存儲空間減少,或兩者都有。優(yōu)化所需要的基礎(chǔ)是在中間代碼生成之后或目標(biāo)代碼生成之后。何謂翻譯程序、編譯程序和解釋程序?答案:如編翻譯程序是指將用某種語言編寫的程序轉(zhuǎn)換成另一種語言形式的程序的程序, 譯程 序和匯編程序等。編譯程序是把用高級語言編寫的源程序轉(zhuǎn)換(加工)成與之等價的另一種用低級語言編寫的目標(biāo)程序的翻譯程序。解釋程序是解釋、執(zhí)行高級語言源程序的程序。劃分
7、程序的基本塊時,確定基本塊的入口語句的條件是什么?答:程序第一個語句,或能由條件轉(zhuǎn)移語句或無條件轉(zhuǎn)移語句轉(zhuǎn)移到的語句,或緊 跟在條件轉(zhuǎn)移語句后面的語句。計算機(jī)執(zhí)行用高級語言編寫的程序有哪些途徑?它們之間的主要區(qū)別是什么_廠答案:計算機(jī)執(zhí)行用高級語言編寫的程序主要途徑有兩種,即解釋與編譯。像Basic之類的語言,屬于解釋型的高級語言。它們的特點是計算機(jī)并不事先對高 級語言進(jìn)行全盤翻譯,將其變?yōu)闄C(jī)器代碼,而是每讀入一條高級語句,就用解釋器 將其翻譯為一條機(jī)器代碼,予以執(zhí)行,然后再讀入下一條高級語句,翻譯為機(jī)器代 碼,再執(zhí)行,如此反復(fù)??偠灾?,是邊翻譯邊執(zhí)行。像C, Pascal之類的語言,屬于編
8、譯型的高級語言。它們的特點是計算機(jī)事先對高 級語言進(jìn)行全盤翻譯,將其全部變?yōu)闄C(jī)器代碼,再統(tǒng)一執(zhí)行,即先翻譯,后執(zhí)行。 從速度上看,編譯型的高級語言比解釋型的高級語言更快。寄存器分配的原則是什么?答案:寄存器分配的原則是:(1)當(dāng)生成某變量的目標(biāo)代碼時,盡量讓變量的值或計算結(jié)果保留在寄存器中,直 到寄存器不夠分配時為止。(2) 當(dāng)?shù)交緣K出口時,將變量的值存放在內(nèi)存中,因為一個基本塊可能有多個后 繼結(jié)點或多個前驅(qū)結(jié)點,同一個變量名在不同前驅(qū)結(jié)點的基本塊內(nèi)出口前存放的寄存器 可能不同,或沒有定值,所以應(yīng)在出口前把寄存器的內(nèi)容放在內(nèi)存中,這樣從基本 塊外入口的變量值都在內(nèi)存中。(3) 對于在一個基本
9、塊內(nèi)后邊不再被引用的變量所占用的寄存器應(yīng)盡早釋放,以提 咼奇 存器的利用效率。簡述編譯程序的工作過程。答:編譯程序的工作過程,是指從輸入源程序開始到輸出目標(biāo)程序為止的整個過程, 是非常復(fù)雜的,就其過程而言,一般可以劃分為五個工作階段:詞法分析,對構(gòu) 成源程序的字符串進(jìn)行掃描和分解,識別出一個個的單詞;語法分析,根據(jù)語言 的語法規(guī)則,把單詞符號串分解成各類語法單位;語義分析與中間代碼產(chǎn)生,即 對各類語法單位,分析其漢一并進(jìn)行初步翻譯;代碼優(yōu)化,以期產(chǎn)生更高效的代 碼;目標(biāo)代碼生成,把中間代碼變換成特定機(jī)器上的低級語言指令形式。 簡述代碼優(yōu)化的目的和意義。答:代碼優(yōu)化是盡量生成 好”的代碼的編譯階
10、段。也就是要對程序代碼進(jìn)行一種等 價變換,在保證變換前后代碼執(zhí)行結(jié)果相同的前提下,盡量使目標(biāo)程序運行時所需要的時間短,同時所占用的存儲空間少。簡述自下而上的分析方法。所謂自下而上分析法就是從輸入串開始,逐步進(jìn)行歸約”,直至歸約到文法的開始符號;或者說從語法樹的末端開始,步步向上歸約”直到根節(jié)點。決定目標(biāo)代碼的因素有哪些?答案:指令格式、字長及寄存器的個數(shù)決定目標(biāo)代碼的因素主要取決于具體的機(jī)器結(jié)構(gòu)、和種 類,并與指令的語義和所用操作系統(tǒng)、存儲管理等都密切相關(guān)。又由于目標(biāo)代碼的 執(zhí)行效率在很大程度上依賴于寄存器的使用,所以目標(biāo)代碼與寄存器的分配算法也有關(guān)。 什么是句柄?什么是素短語?一個句型的最左
11、直接短語稱為該句型的句柄。(3分)素短語是這樣的一個短語,它至少包含一個終結(jié)符并且不包含更小的素短語。(3分)什么是語法制導(dǎo)翻譯?中間代碼通常有哪幾種主要形式?答案:由一個源語言、一個目標(biāo)語言和一組翻譯規(guī)則組成,遮住規(guī)則可將任何源語言符號串翻譯成對應(yīng)的目標(biāo)語言。主要形式:三元式、 四元式、逆波蘭式 為什么在代碼生成時要考慮充分利用寄存器?答案:因為當(dāng)變量值存在寄存器時,引用的變量值可直接從寄存器中取,減少對內(nèi)存的存取次數(shù),這樣便可提高運行速度。因此如何充分利用寄存器是提高目標(biāo)代碼運行效 率的重要途徑。一個典型的編譯程序通常由哪些部分組成?各部分的主要功能是什么?答案:一個典型的編譯程序通常包含8個組成部分,它們是詞法分析程序、語法分析程序、語義分析程序、中間代碼生成程序、中間代碼優(yōu)化程序、目標(biāo)代碼生成程序、表格管 理程序和錯誤處理程序。語法分析的主要任務(wù)是什么?常分為哪二類方法? 答案:任務(wù)是在詞法分析的基礎(chǔ)上將單詞序列組合成各類語法短語.常分為:自頂而下,自底而上二類方法。運行時的DISPLAY表的內(nèi)容是什么?它的作用是什么?答:DIS PLAY表是嵌套層次顯示表。每當(dāng)進(jìn)入一個過程后,在建立它的活動記錄區(qū) 的同時建立一張嵌套層次顯示表diapla
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高效溝通協(xié)作機(jī)制建立方案
- 鄉(xiāng)村環(huán)境綜合整治技術(shù)作業(yè)指導(dǎo)書
- 電力行業(yè)供電安全告知書
- 房屋買賣按揭合同
- 商業(yè)場所租賃使用協(xié)議及設(shè)備設(shè)施管理細(xì)則協(xié)議
- 智能辦公系統(tǒng)集成方案簽署協(xié)議
- 高考語文復(fù)習(xí)-文言文重點字詞解析練習(xí)
- 高考英語整句翻譯漢譯英專題訓(xùn)練500題(含答案)
- 新品手機(jī)使用說明手冊
- 企業(yè)研發(fā)創(chuàng)新基金合作協(xié)議
- 安全管理工作中形式主義及防止對策
- 2024年鄭州信息科技職業(yè)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 藍(lán)牙基礎(chǔ)知識全解課件
- 運動損傷預(yù)防與處理的案例分析
- 第四次工業(yè)革命課件
- 2023-2024學(xué)年西安市高二數(shù)學(xué)第一學(xué)期期末考試卷附答案解析
- 企業(yè)2024年年度安全教育培訓(xùn)計劃
- 《微生物限度檢查法》課件
- Project-培訓(xùn)教學(xué)課件
- 秋風(fēng)詞賞析課件古詩詞賞析
- 福特F-150猛禽說明書
評論
0/150
提交評論