編譯原理填空題

2021-08-02 22:58:15 字數 2672 閱讀 5223

1.符號表的主要功能包括

收集符號屬性,語義檢查依據,目標**生成階段位址分配依據

2.編譯過程可劃分為

詞法分析,語法分析,語義分析,中間**生成,**優化,目標**生成

,3.描述上下文無關文法的句型推導的直觀工具是

語法樹

4.如果乙個文法存在某個句子對應兩顆不同的語法樹,那麼這個文法是

二義的

5.由規範推導所得的句型是

規範句型

6.如果乙個文法的任何產生式的右部都有不含兩個相連的非終結符,則稱這個文法為算符文法

7.常用的兩種動態儲存分配辦法是

棧式動態分配和

堆式動態分配

8.語法分析最常用的兩類方法是自頂向下,自底向上

9.在實現巢狀語句過程的棧式分配中,可用__來記錄巢狀層次

10.變數可視性取決於作用域和

函式的形式引數,復合語句分成序結構

11.最右推導

被稱為規範推導

12.詞法分析程式輸出的符號常常採用

二元式表示

13.陣列的內情向量肯定不含陣列的

各位的界差,

包含陣列的

首位址,陣列型別,維數,各維上下界

14.文法產生的

句子的全體是該文法的描述語言

15.z=abc,z的固有頭是

ε,a,ab,固有尾是

ε,c,bc,頭是

ε,a,ab,abc,

尾是ε,c,bc,abc

16.語言處理程式由

匯程式設計序,編譯程式,解釋程式

組成17.編譯過程的

6個階段任務可由

6個模組構成,分別是

詞法分析程式,語法分析程式,語義分析程式,中間**生成程式,**優化程式,目標**生成程式,

此外還必須包括

**處理

和出錯處理

18.2型文法是

上下文無關文法

,3型文法是

正則文法

19.編譯和解釋的根本區別是

是否生成目標**

20.產生式是一種定義

語法範疇

的書寫規則

21.常用引數傳遞方式:

位址傳遞,值傳遞,名傳遞

21.程式語言執行時儲存管理方案,主要分為

靜態儲存分配

和動態儲存分配

兩大類22.對於編譯程式來說,輸入資料是

源程式,輸出資料是

目標程式

23.對於資料空間儲存分配,

fortran

採用靜態策略

,pascal採用

動態策略

24.對於文法

g,只含有終結符的句型叫句子

26.文法的每個產生時都配備一組屬性的計算,叫做

語義規則

27.程式語言語義分為

靜態語義

和動態語義

28.分析句型時,採用算符優先,每次直接規約的是

最左素短語

,採用lr分析技術時每次規約的是控制代碼

29.根據優化所涉及的程式範圍,可以分為三個級別,分別是

區域性優化,迴圈優化,全域性優化

30.計算機執行高階語言編寫的程式主要有編譯和

解釋兩種途徑

31.區域性優化是在

基本塊內進行優化

32.每條指令的執行代價定義為

指令訪問主存數加一

33.掃瞄器任務是從

源程式中識別出

單詞符號

34.控制代碼是

乙個句型中的最左簡單短語

35.lr分析器包括

乙個總控程式

和一張分析表

36.自上而下分析法是指

從開始符號出發向下推導出句子

37.乙個名字的屬性包括型別和

作用域

38.乙個語法

g的**分析表

m不包含多重定義則g是

ll1文法

39.乙個文法能用有窮多的規則定義無窮多的符號串集合是因為文法中存在

遞迴定義的規則

40.一張轉換圖只包含有限個狀態,其中只有乙個

初態,至少有乙個終態

41.語法分析基於

上下文無關文法

進行42.語法分析器的輸入是

單詞符號串

輸出是語法單位

43.語義分析階段生成的與源程式等價的中間表示形式有

逆波蘭表示式,三元式,四元式,二元式

44.**分析程式是乙個

分析表和乙個

符號棧聯合控制的

45.高階語言程式設計是編譯程式可報出全部

語法錯誤和部分

語義錯誤

46 自底向上分析是從

輸入串入手,利用產生式向上直接規約,直到開始符號

47.自頂向下是

從開始符號向下根據產生式直接推導,直到與輸入串匹配

48.自頂向下包括

移進,規約,錯誤處理,接受

四種操作

49.最右推導的逆過程成為

規範規約

,也叫最左規約

50.最右推導叫

規範推導

,得到的句型叫

規範句型

51.執行時的儲存區常常劃分成目標區,靜態資料區,棧,堆

52.靜態儲存能確定目標程式執行時所需的全部資料空間大小,編譯時安排好目標程式執行時的全部資料空間,確定每個資料物件的儲存位置

53.

程式填空題

includeusing namespace std class a a int aa 定義建構函式,用引數aa初始化資料成員a void main includeusing namespace std class a a a int aa,int nn,int mm int getvalue in...

軟體測試填空題

1軟體缺陷產生的原因包括 設計,以及其他原因 需求 團隊工作 2.軟體開發模式包括 邊寫邊改模式,螺旋模式 原型模型 瀑布模型 3.黑盒測試用例設計方法包括 以及因果圖法 等價類劃分法,邊界值分析法,錯誤推測法,判定表,正交試驗設計法 4.測試過程中,用於描述測試的整體方案,描述依據測試案例找出問題...

C語言 填空題

c語言填空題 1 完善以下公升序插入排序的 插入排序 通過構建有序序列,對於未排序資料,在已排序序列中從後向前掃瞄,找到相應位置並插入。void insertsort int a,int n int tmp 0,p 0 for int i 1 i n i tmp a i p i 1 while p ...