编译原理第七章-语法制导翻译和中间代码

1 中间代码是介于源语言程序和什么之间的一种代码?(D )

A 源代码 B 机器语言 C 汇编语言 D 目标代码

 

2 在编译程序中与生成中间代码的目的无关的是(B )。

A 便于目标代码优化

B 便于存储空间的组织

C 便于目标代码的移植

D 便于编译程序的移植

 

3 逆波兰表示法表示表达式时无须使用括号。

正确

 

4 四元式之间的联系是通过(B )实现的。

A 指示器 B 临时变量 C 符号表 D 程序变量

 

5 后缀式 ab+cd+/可用表达式(B )来表示。

A a+b/c+d

B (a+b)/(c+d)

C a+b/(c+d)

D a+b+c/d

 

6 表达式( ┐ A ∨B)∧(C∨D)的逆波兰表示为(B )。

A ┐AB∨∧CD∨

B A┐B∨CD∨∧

C AB∨┐CD∨∧

D A┐B∨∧CD∨

 

7 间接三元式表示法的优点为(A )。

A采用间接码表,便于优化处理

B 节省存储空间,不便于表的修改 

C便于优化处理,节省存储空间  

D 节省存储空间,不便于优化处理

 

8 数组元素的地址计算与数组的存储方式有关。

正确

 

9 树形表示和四元式不便于优化,而三元式和间接三元式则便于优化。

错误

 

10 表达式a*b-c-d$e$f-g-h*i中,运算符的优先级由高到低依次为-、*、$,且均为右结合,则其后缀式为(C )。

A $*a-b-cd$e*-f-ghi

B bcd--a*efgh--i*$$

C abcd--*efgh--i*$$

D ab*c-d-e$fg-h-i*$

 

11 以下(D )不是中间代码的表示形式。

A DAG图 B 后缀式 C 三元式 D 间接四元式

 

12 表达式a+b*c-d/e↑f的后缀式是(C )。

A ab+c*d-e↑f

B abc+*def/↑-

C abc*+def↑/-

D abc*+-def↑/

 

13 编译过程中将源代码翻译成中间代码,具有很多优点,其中(A )不是中间代码的优点。

A 中间代码不能用于解释

B 利于在不同目标机上实现同一种语言

C 利于进行与机器无关的优化

D 编译程序的逻辑结构更为简单明确

 

14 中间代码生成时依据的是(C )。

A 语法规则 B 词法规则 C 语义规则 D 等价变换规则

 

15 采用三元式实现三地址代码时,不利于对中间代码进行优化。

正确

你可能感兴趣的:(编译原理)