华师17秋《编译原理》在线作业
华师《编译原理》在线作业一、单选题:【30道,总分:60分】
1.xab + cde -*f/:=是赋值语句( ) 相应的后缀式 (满分:2)
A. x:=a+b+c*d-e/f
B. x:=a+(b+c)*d-e/f
C. x:=a+b+c*(d-e)/f
D. x:=a+b+c+(c*d)-e/f
2.在状态转换图中,结点代表( ),用圆圈表示。 (满分:2)
A. 输入缓冲区
B. 向前搜索
C. 状态
D. 字符串
3.编译过程中扫描器的任务包括( )。 ①组织源程序的输入 ②按词法规则分割出单词,识别出其属性,并转换成属性字的形式输出 ⑧删除注解 ④删除空格及无用字符 ⑤行计数、列计数 ⑥发现并定位词法错误 ⑦建立符号表 (满分:2)
A. ②③④⑦
B. ②③④⑥⑦
C. ①②③④⑥⑦
D. ①②③④⑤⑥⑦
4.设文法G(S为其开始符号)产生式如下: S→aSb|ab|ε 则G是一个 (满分:2)
A. LR(1)文法
B. SLR(1)文法
C. 三型文法
D. 二型文法
5.语法分析的常用方法是( )( ) 。 a.自顶向下 b.自底向上 c.自左向右 d.自右向左 (满分:2)
A. abcd
B. ab
C. cd
D. abc
6.下面说法正确的是 (满分:2)
A. 一个SLR(1)文法一定也是LALR(1)文法
B. 一个LR(1)文法一定也是LALR(1)文法
7.一个LR(1)文法合并同心集后若不是LALR(1)文法: (满分:2)
A. 则可能存在移进/归约冲突
B. 则可能存在归约/归约冲突
C. 则可能存在移进/归约冲突和归约/归约冲突
D. 不存在冲突
8.在编译程序采用的优化方法中,( ) 是在循环语句范围内进行的。 ①合并已知常量 ②删除多余运算, ③删除归纳变量 ④强度削弱 ⑤代码外提 (满分:2)
A. ①④
B. ①⑤
C. ①④⑤
D. ③④⑤
9.编译程序是一种常用的软件。 (满分:2)
A. 应用
B. 系统
C. 工具
D. 测试
10.文法G:A→ε A→aB B→Ab B→a是 (满分:2)
A. 正规文法
B. 二型文法
C. 上下无关文法
D. 不确定
11.运算符与运算对象类型不符"属于 (满分:2)
A. 语法错误
B. 语义错误
C. 语用错误
D. 规则
12.数组的内情向量中肯定不含有数组的——的信息 (满分:2)
A. 维数;;;
B. 类型
C. 维上下界
D. 各维的界差
13.有下列文法: S->Pa|Pb|c P->Pd|Se|f 该文法是( )。 (满分:2)
A. LL(1)文法
B. SLR(1)文法
C. a和b
D. 都不是
14.编译程序中的语法分析器接受以( )为单位的输入,并产生有关信息供以后各阶段使用。 (满分:2)
A. 表达式
B. 产生式
C. 单词
D. 语句
15.PL/0语言的目标程序解释执行时用到的数据对象有( ): (满分:2)
A. 目标代码CODE
B. 符号表TABLE
C. 关键字表WORD
D. 分析表
16.一个右线性文法G一定是 (满分:2)
A. LL(1)文法
B. LR(1)文法
C. SLR(1)文法
D. 上述三者都不是
17.编译程序生成的目标程序( )是可执行的程序。 (满分:2)
A. 一定
B. 不一定
C. 某种情况下一定
D. 某种情况下不一定
18.算符优先文法是指( )的文法。 ①没有形如U->…VW…的规则(U,V,W∈VN) ②终结符号集VT中任意两个符号对之间至多有一种优先关系成立 ⑧没有相同的规则右部 ④没有形如U->ε的规则 (满分:2)
A. ①②
B. ①②③
C. ①②③④
D. ①②④
19.正规文法( )二义性的。 (满分:2)
A. 可以是
B. 一定不是
C. 一定是
20.代码优化的主要目标是( ) ① 如何提高目标程序的运行速度 ② 如何减少目标程序运行所需的空间 ③ 如何协调①和② ④ 如何使生成的目标代码尽可能短 (满分:2)
A. ①②
B. ①②③
C. ①②④
D. ①②③④
21.若一个句型中出现了某一产生式的右部,则此右部( )是该句型的句柄。 (满分:2)
A. 一定
B. 不一定
C. 视情况而定
22.一个正规语言只能对应 (满分:2)
A. 一个正规文法
B. 一个最小有限状态自动机
C. 一个下推自动机
D. 一个确定的有限自动机
23.下面三个文法中,为SLR(1)文法的是( )。 G1:P->PaP|b G2:P->bPb|cPc|b|c G3:P->bPb|bPc|d (满分:2)
A. 仅Gl
B. 仅G2
C. 仅G3
D. G2和G3
E. 都不是
24.LR(K)文法( )。 (满分:2)
A. 都是无二义性的
B. 都是二义性的
C. 一部分是二义性的
25.设有文法G:S::=S*S|S+S|(S)|a该文法( )二义性文法。 (满分:2)
A. 是
B. 不是
C. 无法判断
26.算符文法是指( )的文法。 ①没有形如U->…VW…的规则(U,V,W∈VN) ②终结符号集VT中任意两个符号对之间至多有一种优先关系成立 ⑧没有相同的规则右部 ④没有形如U->ε的规则 (满分:2)
A. ①
B. ①②
C. ①②③
D. ①②③④
27.一个语言的文法是( ). (满分:2)
A. 惟一的
B. 不惟一的
C. 个数有限的
D. 无限的
28.“数组元素的地址计算与数组的存储方式有关”的说法是( )。 (满分:2)
A. 错误的
B. 正确的
C. 不能确定
29.合并表达式中常量运算的目的是( )。 ①合并常量,使表达式中的常量尽可能少 ②合并常量,使表达式尽可能简短 ③将可在编译时刻计算的常量运算在编译时刻计算出来,然后用所计算出来的值替换表达式中出现的所有这种常量运算,使得生成的代码指令尽可能少 (满分:2)
A. ①
B. ②
C. ③
D. ①②③
30.设r=(a|b|c)(x|y|z)则L(r)中元素为( ) 个 (满分:2)
A. 9
B. 6
C. 18
D. 27
二、多选题:【10道,总分:20分】
1.在编译程序采用的优化方法中,( )是在循环语句范围内进行的。 (满分:2)
A. 合并已知常量
B. 删除多余运算
C. 删除归纳变量
D. 强度削弱
E. 代码外提
2.在下述的编译方法中,自底向上的方法有 (满分:2)
A. 简单优先分析
B. 算符优先分析
C. 递归下降分析
D. 预测分析技术
3.语法分析的常用方法是( )( ) 。 (满分:2)
A. 自顶向下
B. 自底向上
C. 自左向右
D. 自右向左
4.合并表达式中常量运算的目的是( )。 (满分:2)
A. 合并常量,使表达式中的常量尽可能少;
B. 合并常量,使表达式尽可能简短
C. 将可在编译时刻计算的常量运算在编译时刻计算出来,然后用所计算出来的值替换表达式中出现的所有这种常量运算,
D. 使得生成的代码指令尽可能少
5.在下述的编译方法中,自顶向下的分析方法有 ( )。 (满分:2)
A. 简单优先分析
B. 算符优先分析
C. 递归下降分析
D. 预测分析技术
6.代码优化的主要目标是( )。 (满分:2)
A. 如何提高目标程序的运行速度
B. 如何减少目标程序运行所需的空间
C. 如何协调①和②
D. 如何使生成的目标代码尽可能短
7.下面的程序段可以进行哪些优化( )。 i:= 1 j:= l0 read k L:x:= x*i y:= j*i z:= x*y write j i:= i+1 if i<100 goto L halt (满分:2)
A. 合并已知常量
B. 删除多余运算
C. 删除归纳变量
D. 强度削弱
E. 代码外提
8.素短语是指( )的短语。 (满分:2)
A. 至少包含一个符号
B. 至少包含一个终结符号
C. 至少包含一个非终结符号
D. 除自身外不再包含其他终结符号
E. 除自身外不再包含其他非终结符号
F. 除自身外不再包含其他短语
G. 除自身外不再包含其他素短语
9.算符优先文法是指( )的文法。 (满分:2)
A. 没有形如U->…VW…的规则(U,V,W∈VN)
B. 终结符号集VT中任意两个符号对之间至多有一种优先关系成立
C. 没有相同的规则右部
D. 没有形如U->ε的规则
10.编译过程中,语法分析器的任务是( ) 。 (满分:2)
A. 分析单词是怎样构成的
B. 分析单词串是如何构成语句和说明的
C. 分析语句和说明是如何构成程序的
D. 分析程序的结构
三、判断题:【10道,总分:20分】
1.对于数据空间的存贮分配,FORTRAN采用动态贮存分配策略。 (满分:2)
A. 错误
B. 正确
2.yacc是一个语法分析器的生成器。 (满分:2)
A. 错误
B. 正确
3.若文法 G 定义的语言是无限集,则文法必然是前后文无关的 (满分:2)
A. 错误
B. 正确
4.每个文法都能改写为LL(1)文法。 (满分:2)
A. 错误
B. 正确
5.描述一个语言的文法是 唯一的 。 (满分:2)
A. 错误
B. 正确
6.一个文法所描述的语言是唯一的。 (满分:2)
A. 错误
B. 正确
7.编译程序是一种常用的应用软件。 (满分:2)
A. 错误
B. 正确
8.仅考虑一个基本块,不能确定一个赋值是否真是无用的。 (满分:2)
A. 错误
B. 正确
9.数组元素的地址计算与数组的存储方式有关。 (满分:2)
A. 错误
B. 正确
10.设文法G(S为其开始符号)产生式如下: dS→aSb|ab|ε 则G是一个LR(1)文法。 (满分:2)
A. 错误
B. 正确
页:
[1]