天天看點

哈工大陳鄞配套版本 MOOC 第19講 代碼優化4 測驗答案

坐标:編譯原理,代碼優化

1.删除公共子表達式需要用到以下哪種資料流分析技術( C )。

A.到達定值分析

B.活躍變量分析

C.可用表達式分析

D.以上都不正确

2.複制傳播需要用到以下哪種資料流分析技術( C )。

A.到達定值分析

B.活躍變量分析

C.可用表達式分析

D.以上都不正确

3.删除無用代碼需要用到以下哪種資料流分析技術( B )。

A.到達定值分析

B.活躍變量分析

C.可用表達式分析

D.以上都不正确

4.識别循環不變計算需要用到以下哪種資料流分析技術( A )。

A.到達定值分析

B.活躍變量分析

C.可用表達式分析

D.以上都不正确

5.關于支配結點的二進制關系,下列叙述中不正确的是( D )。

A.滿足自反性

B.滿足傳遞性

C.滿足反對稱性

D.滿足對稱性

6.下列優化方法( C )不是針對循優化進行的。

A.強度削弱

B.删除歸納變量

C.删除多餘運算

D.代碼外提

7.程式流圖中,若m是n的必經節點,并且存在有向邊n→m,則稱n→m是流圖中的( B )

A.一個循環

B.一條回邊

C.一條基本邊

D.一個基本通圖

8.程式流圖中,具有性質( D )的節點序列為一個自然循環。

A.它們是非連通的且隻有一個入口節點

B.它們是強連通的但有多個入口節點

C.它們是非連通的但有多個入口節點

D.它們是強連通的且隻有一個入口節點

9.采用DAG圖不可以實作的優化有( C )。

A.合并已知量

B.删除公共子表達式

C.删除無用指派

D.删除歸納變量

合并已知量是常量合并吧。

10.( B )屬于局部優化。

A.代碼外提

B.删除多餘運算

C.強度削弱

D.删除歸納變量

11.以下說法正确的是( A )。

A.進行代碼優化時要着重考慮循環的代碼優化,這對提高目标代碼的效率将起更大作用

B.強度削弱是局部優化的一種方法

C.循環不變計算都可以移動到循環之前

D.循環中的無用指派在循環優化時均可删除

12.以下說法不正确的是( B )。

A.為了找出程式中的循環,就需要對程式中的控制流程進行分析

B.在循環中強度削弱僅對乘法運算實行

C.僅考慮一個基本塊,不能确定一個指派是否真是無用的

D.在中間代碼優化中循環上的優化主要有不變表達式外提和削減運算強度

繼續閱讀