[A]词法分析 [B]表格管理 [C]语法分析 [D]语义分析
2. D 文法不是LL(1)的。
[A]递归 [B]右递归 [C]2型 [D]含有公共左因子的
3.文法E→E+E|E*E|i的句子i*i+i*i有 C 棵不同的语法树。
[A] 1 [B] 3 [C] 5 [D] 7
4.文法 S→aaS|abc 定义的语言是 C 。
[A]{a2kbc|k>0} [B]{akbc|k>0}
[C]{a2k-1bc|k>0} [D]{akakbc|k>0}
5.若B为非终结符,则 A→.B 为 D 。
[A]移进项目 [B]归约项目 [C]接受项目 [D]待约项目
6. 文法G:E→E+T|T T→T*P|P P →(E)|i
则句型P+T+i 的句柄和最左素短语分别是( B )。
[A] P+T和i [B] P和P+T [C] i和P+T+i [D] P和P
7.代码优化时所依据的是 C 。
[A]语法规则 [B]词法规则
[C]等价变换规则 [D]语义规则
8.表达式a-(-b)*c的逆波兰表示(@为单目减)为 B 。
[A]a-b@c* [B]ab@c*- [C]ab@- [D]ab@c-*
9. 局部优化是对 进行的优化。
[A] 表达式 [B] 部分代码
[C] 循环体 [D] 基本块
10. 削减运算强度是对 的一种优化。
[A] 表达式 [B] 过程 [C] 基本块 [D] 循环
1、描述一个语言的文法是______B_____。
a、唯一的 b、不唯一的 c、个数有限的
2、汇编程序是将__A____翻译成__B____;编译程序是将_____C__翻译成_____D_____。
a、汇编语言程序 b、机器语言程序 c、高级语言程序 d汇编语言或机器语言程序
3、设有文法G[I]:
I→I0|I1|I a|Ic|a|b|c
下列符号串中是该文法的句子的有___________________。
①ab0 ②a0c01 ③aaa ④bc10
可选项有
a、① b、②③④ c、③④ d、①②③④
4、一个上下文无关文法G包括四个组成部分依次为:一组_____、一个_____、一组_____、一组______。
a、字符串 b、字母数字串 c、产生式 d、结束符号 e、开始符号 f、文法 g、非终结符号 h、终结符号
5、下列文法__________二义文法
E::=E+T|T T::=T*F| F F::=(E)|i
可选项有: a、是 b、不是 c、无法判断。
6、语法分析的常用方法是_________:
①自顶向下 ②自底向上 ③自左向右 ④自右向左
可选项有:
a、①②③④ b、①② c、③④ d、①②③
7、LR(K)文法是_________。
a、从左到右分析,共经过K步的一种编译方法。
b、从左到右分析,每次向前预测K步的一种编译方法。
c、从左到右分析,每次向貌似句柄的符号串后看K个输入符号的一种编译方法。
d、从左到右分析,每次走K步的一种编译方法。
8、编译过程中,比较常见的中间语言有___________。
①波兰表示
②逆波兰表示
③三元式
④四元式
⑤树形表示
可选项有:a、①③④ b、②③④ c、③④①⑤ d、②③④⑤
9、-a-(b*c/(c-d)+(-b)*a)的逆波兰表示是___________。
a、abc*cd-b-a*+/-- b、a-bc*cd-b-a*+/-
c、a-bc*cd-/b-a*+- d、a-bc*/cd-b-a*+-
10、代码优化的主要目标是_____________。
①如何提高目标程序的运行速度
②如何减少目标程序运行所需的空间。
③如何协调①和②
④如何使生成的目标代码尽可能简短
可选项有:
a、②④ b、①②③ c、③④① d、②③④
1、有穷自动机M接受字母表={0,1}上所有满足下述条件的串:串中至少包含两个连续的0或两个连续的1。请写出与M等价的正规式。
2、已知文法G(E)
E→T|E+T
T→F|T *F
F→(E)|i
(1)给出句型(T *F+i)的最右推导及画出语法树;
(2)给出句型(T *F+i)的短语、素短语
3、有表达式如下:
(A+B)/(C-D)-(A+B*N)
给出该表达式的逆波兰式表示(后缀式)
给出上述表达式的四元式和三元式序列
1、设有字母表{a,b}上的正规式R=(ab|a)*。(20分)
(1)构造R的相应有限自动机;
(2)构造R的相应确定有限自动机;
(3)构造R的相应最小确定有限自动机;
2、文法G及其LR分析表如下,请给出对串dada#的分析过程。(10分)
G: S → VdB ①
V → e ②
V → ε ③
B → a ④
B → Bda ⑤
B → ε ⑥
| 状态 | ACTION | GOTO | |||||
| d | e | a | # | S | B | V | |
| 0 | r3 | S3 | 1 | 2 | |||
| 1 | acc | ||||||
| 2 | S4 | ||||||
| 3 | r2 | ||||||
| 4 | r6 | S5 | r6 | 6 | |||
| 5 | r4 | r4 | |||||
| 6 | S7 | r1 | |||||
| 7 | S8 | ||||||
| 8 | r5 | r5 | |||||
b := 1
b := 2
if w <= x goto L2
e := b
goto L2
L1:goto L3
L2:c := 3
b := 4
c := 6
L3:if y <= z goto L4
halt
L4:g := g + 1
h := 8
goto L1
1、词法分析器的输入是
A、单词符号 B、源程序
C、语法单位 D、目标程序
2、中间代码生成时所遵循的是
A、语法规则 B、词法规则
C、语义规则 D、等价变换规则
3、编译程序是对
A、汇编程序的翻译 B、高级语言程序的解释执行
C、机器语言的执行 D、高级语言的翻译
4、词法分析的依据是
A、语义规则 B、构词规则
C、语法规则 D、等价变换规则
5、正规式M1和M2等价是指
A、M1和M2的状态数相等 B、M1和M2的有向弧相等
C、M1和M2所识别的语言集相等
D、M1和M2的状态数和有向弧条数相等
6、文法G:S→xSx|y所能识别的语言是
A、xyx B、(xyx)*
C、xnyxn D、x*yx*
7、文法G:E →E+T|T T→T*P|P P→(E)|i则句型P+T+i 的句柄和最左素短语分别是
A、P+T和i B、P和P+T
C、i和P+T+i D、P和P
8、设文法为: S→SA|A A→a|b则对句子aba,下面 是规范推导。
A、S=>SA=>SAA=>AAA=>aAA=>abA=>aba
B、S=>SA=>SAA=>AAA=>Aaa=>Aba=>aba
C、S=>SA=>SAA=>SAa=>Sba=>Aba=>aba
D、S=>SA=>Sa=>SAa=>Sba=>Aba=>aba
9、终结符具有 属性。
A、传递 B、继承
C、抽象 D、综合
10、 属于局部优化。
A、代码外提 B、删除多余运算
C、强度削弱 D、删除归纳变量
1、编译程序各阶段工作都涉及到
A、语法分析 B、表格处理
C、出错处理 D、语义分析 E、词法分析
2、编译程序工作时,通常有 阶段。
A、词法分析 B、语法分析
C、中间代码生成 D、语义检查 E、目标代码生成
3、令∑={a,b},则∑上所有以b开头,后跟若干个ab的字的全体对应的正规式为
A、b(ab)* B、b(ab)+
C、(ba)*b D、(ba)+b E、b(a|b)*
4、语法分析时通过 操作使用符号栈。
A、移进 B、规约
C、比较 D、接受 E、出错处理
5、下列优化中,属于循环优化的有
A、强度削弱 B、合并已知量
C、删除无用赋值 D、删除归纳变量 E、代码外提
1、编译程序通常可分为5个阶段,分别是 、语法分析、 、代码优化和目标代码生成。
2、目标代码可以是_______________指令代码或 指令代码或绝对机器指令代码。
3、若二个正规式所表示的_____________________相同,则认为二者相等。
4、在自上而下的语法分析中,应先消除文法的 递归,再消除文法的 递归。
5、规范规约中的可规约串是指 ,算符优先分析中的可规约串是指 。
6、文法符号的属性有两种,一种称为 ,另一种称为______________。
7、在一个基本块中,可实行3种优化方法,即合并已知量, ,_____________________。
8、优化就是对程序进行各种 变换,使之能生成更有效的______________。
9优化中,可把循环中的 提到循环外面去,这种方法称为 。
10、常用的参数传递方式有 传值和 。
1、对给定的正规式b*(d|ad)(b|ab)+,构造NFA M。
2、对文法G[E]:E→ E+T|T
T→ T*P|P
P → i
(1)构造文法的优先关系表(不考虑语句括号#),并指出此文法是否为算符优先文法。
(2)构造文法的优先函数。
3、设有如下的基本块:
T1:=A+B
T2:=5
M:=T2*4
T3:=C-D
T4:=M+3
L:=T1*T3
T4:=A+B
N:=T4
画出改基本块的DAG图。假设变量L、M和N在基本块出口之后是活跃的,给出优化后的四元式阵列。下载本文