《编译原理》复习题(看完必过)
一、单项选择题
1.将编译程序分成若干个“遍”是为了( B )
A.提高程序的执行效率
B. 使程序的结构更加清晰
C.利用有限的机器内存并提高机器的执行效率
D.利用有限的机器内存但降低了机器的执行效率
2.不可能是目标代码的是( D )
A.汇编指令代码 B.可重定位指令代码
C.绝对指令代码 D.中间代码
3.词法分析器的输入是( B )
A.单词符号串 B.源程序
C.语法单位 D.目标程序
4.中间代码生成时所遵循的是( C )
A.语法规则 B.词法规则
C.语义规则 D.等价变换规则
5.编译程序是对( D )
A.汇编程序的翻译 B.高级语言程序的解释执行
C.机器语言的执行 D.高级语言的翻译
6.词法分析应遵循( C )
A.语义规则 B.语法规则
C.构词规则 D.等价变换规则
7.词法分析器的输出结果是( C )
A.单词的种别编码 B.单词在符号表中的位置
C.单词的种别编码和属性值 D.单词属性值
8.正规式M1和M2等价是指( C )
A.M1和M2的状态数相等 B.M1和M2的有向弧条数相等
C.M1和M2所识别的语言集相等 D.M1和M2状态数和有向弧条数相等
9.词法分析器作为独立的阶段使整个编译程序结构更加简洁、明确,因此,( B )
A.词法分析器应作为独立的一遍
B.词法分析器作为子程序较好
C.词法分析器分解为多个过程,由语法分析器选择使用 .
D.词法分析器并不作为一个独立的阶段
10.如果L(M1)=L(M2),则M1与M2( A )
A.等价 B.都是二义的
C.都是无二义的 D.它们的状态数相等
11.文法G:S→xSx|y所识别的语言是( C )
A.xyx B.(xyx)* c.xnyxn(n≥0) d.x*yx*
12.文法G描述的语言L(G)是指( A )
A. B.
C. D.
13.有限状态自动机能识别( C )
A.上下文无关文法 B.上下文有关文法
C.正规文法 D.短语文法
14.如果文法G是无二义的,则它的任何句子( A )
A.最左推导和最右推导对应的语法树必定相同
B.最左推导和最右推导对应的语法树可能不同
C.最左推导和最右推导必定相同
D.可能存在两个不同的最左推导,但它们对应的语法树相同
15.由文法的开始符经0步或多步推导产生的文法符号序列是( C )
A.短语 B.句柄 C.句型 D.句子
16.文法G:E→E+T|T
T→T*P|P
P→(E)|i
则句型P+T+i的句柄为( B )
A.P+T B.P C.P+T+i D.i
17.文法G:S→b|∧|(T)
T→T∨S|S
则FIRSTVT(T)=( C )
A.{ b,∧,( } B汇编判断指令.{ b,∧,) }
C.{ b,∧,(,∨ } D.{ b,∧,),∨ }
18.产生正规语言的文法为( D )
A.0型 B.1型 C.2型 D.3型
19.任何算符优先文法( D )优先函数。
A.有一个 B.没有 C.有若干个 D.可能有若干个
20.采用自上而下分析,必须( C )
A.消除左递归 B.消除右递归
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论