当前位置:首页 > 编译原理复习题 - 给学生(2014)
.. .. ..
L →L(1), S
L →S
L.num = L(1).num + S.num
L.num = S.num
若输入为(a,(a)),且采用自底向上的分析方法,则输出为 。C A.0
B.1
C.2
D.4
8.四元式之间的联系是通过 ____________实现的。B
A.指示器 B.临时变量 C.符号表 D.程序变量 9.表达式(┐a∨b)∧(c∨d)的逆波兰表示为 。B A.┐ab∨∧cd∨ B.a┐b∨cd∨∧ C.ab∨┐cd∨∧ D.a┐b∨∧cd∨ 10.表达式a+b+c+d的逆波兰表示为 。B A.a+bc+d+ B.ab+c+d+ C.ab+cd++ D.abc+d++
11.有文法G及其语法制导翻译如下所示(语义规则中的*和+分别是常规意义下的算术运算符): E→E(1) ∧ T {E.val = E(1).val * T.val} E→T {E.val = T.val}
T→T(1)# n {T.val = T(1).val + n.val } T→ n {T.val = n.val}
则分析句子3 ∧ 3 # 4其值为 。B A. 10 B. 21 C. 14 D. 24 12.表达式a+b+c的逆波兰表示为 。B A.a+bc+ B.ab+c+ C.+abc+ D.abc++
参考材料
.. .. ..
13. 文法G[S]及其语法制导翻译定义如下: 产生式 S’ → S
语义动作 print(S.num) S.num = L.num +1 S.num = 0
L.num = L(1).num + S.num
S → (L)
S → a
L →L(1), S
L →S
L.num = S.num
若输入为(a, a),且采用自底向上的分析方法,则输出为 。B A.0 C.2
B.1 D.4
14.有一语法制导翻译定义如下: S→bAb print “1” A→(B print “2” A→a print “3” B→aA) print “4”
若输入序列为b(a(a(aa)))b,且采用自底向上的分析方法,则输出序列为 。B A.32224441 C.12424243
B.34242421 D.34442212
15.赋值语句X:=-(a+b)/(c-d)-(a+b*c)的逆波兰表示是 。C A. Xab+cd-/-bc*a+-:= B. Xab+/cd-bc*a+--:= C. Xab+-cd-/ a bc* +-:= D. Xab+cd-/abc* +--:=
参考材料
.. .. ..
16.有一语法制导翻译定义如下,其中+表示符号连接运算: S→B
print B.vers
B.vers=a
B→a
B→b B.vers=b B→Ba
B.vers=a+B.vers
B→Bb B.vers=b+B.vers
若输入序列为abab,且采用自底向上的分析方法,则输出序列为 。D A.aabb
B.abab
C.bbaa
D.baba
17.编译程序不能检查、处理的错误是程序中的________。B
A.静态语义检查 B.动态语义检查 C.语法错误 D.词法错误 (优化、存储、错误管理)
1.在编译过程中,如果遇到错误应该 。C A. 把错误理解成局部的错误
B. 对错误在局部范围内进行纠正,继续向下分析
C. 当发现错误时,跳过错误所在的语法单位继续分析下去 D. 当发现错误时立即停止编译,待用户改正错误后再继续编译
二、填空题 概述部分:
1.编译程序的开发常常采用自编译、 交叉编译 、 自展 和移植等技术实现。 2.解释程序和编译程序的区别在于 是否生成目标程序 。
3.如果编译程序生成的目标程序是汇编语言程序,则源程序的执行分为3个阶段: 编译阶段 、 汇
参考材料
.. .. ..
编阶段 和 运行阶段 。
4.编译程序工作过程中,第一阶段输入是 源程序 ,最后阶段的输出为 目标程序 。
5.编译过程通常可分为5个阶段 词法分析阶段 、 语法分析阶段 、 语义分析和中间代码生成阶段 、优化阶段和目标代码生成阶段。
6.如果编译阶段生成的目标程序是某特定计算机系统的机器代码程序,则源程序的执行分为两大阶段: 编译阶段 和 运行阶段 。
7.对编译程序而言,输入数据是 源程序 ,输出结果是 目标程序 。 8.贯穿于编译程始终的工作有 符号表处理 和出错处理。
词法分析部分:
1.词法分析的工作是将源程序中的 字符串 变换成 单词符号流 的过程,所遵循的是语言的 构词规则 。
2.若两个正规式所表示的 正规集 相同,则认为二者是等价的。 3.若两个正规式所表示的正规集相同,则认为二者是 等价 的。
4.正规式R1和R2等价是指_______表示相同的正规集 。
5.词法分析器的输入是源程序字符串,输出结构是 二元式(单词种别, 单词自身的值) 。词法分析所遵循的是语言的 构词 规则。
6.确定的有限自动机是一个五元组,包含的五个元分别是:状态集合、 字母表、初态、终态集、状态转换函数集合 。
7.有限自动机是更一般化的状态转换图,它分为 确定的有限自动机DFA 和 非确定的有限自动机NFA 两种。
8.NFA和DFA的区别主要有两点:其一是 NFA可以有若干个初始状态,而DFA仅有一个初始状态 ;其二是 NFA的状态转换函数f不是单值函数,而是一个多值函数 。
语法分析部分:(基本概念、LL(1)、LR(0)、SLR(1)、递归下降子程序)
参考材料
共分享92篇相关文档