2011-2012编译原理考试题10套,很多高校都用这套 下载本文

内容发布更新时间 : 2024/5/20 1:59:11星期一 下面是文章的全部内容请认真阅读。

一、选择题(本大题共20小题,每小题1分,共20分)

1、描述一个语言的文法是___________。

a、唯一的 b、不是唯一的 c、个数有限的 2、简单优先分析法每次都是对___________进行归约。

a、最左短语 b、直接短语 c、句柄 d、素短语 e、最左素短语 3、设有文法G[I]: I→I0 |I1 |Ia |Ic |a |b |c

下列符号串中是该文法的句子的有___________________。 ①ab0 ②a0c01 ③aaa ④bc10 可选项有

a、① b、②③④ c、③④ d、①②③④ 4、LR(K)文法________二义性的。

a、都是 b、都不是 c、不一定都是

5、一个上下文无关文法G包括四个组成部分依次为:一组_____、一个_____、一组_____、一组______。

a、字符串 b、字母数字串 c、产生式 d、结束符号 e、开始符号 f、文法 g、非终

结符号 h、终结符号

6、文法G所描述的语言是__________的集合 a、文法G的字汇表V中所有符号组成的符号串 b、文法G的字汇表V的闭包V*中的所有符号串

c、由文法的开始符号推出的所有符号串

d、由文法的开始符号推出的所有终结符号串。

7、设有文法G[Z]:Z→Z*Z|Z+Z|(Z)|a 该文法_______二义性文法 a、是 b、不是 c、无法判断

8、语法分析的常用方法是_________:

①自顶向下 ②自底向上 ③自左向右 ④自右向左 可选项有:

a、①②③④ b、①② c、③④ d、①②③ 9、LR(K)文法是_________。

a、从左到右分析,共经过K步的一种编译方法。

b、从左到右分析,每次向前预测K步的一种编译方法。

c、从左到右分析,每次向貌似句柄的符号串后看K个输入符号的一种编译方法。 d、从左到右分析,每次走K步的一种编译方法。 10、素短语是指_______的短语。 ①至少包含一个符号 ②至少包含一个非终结符号 ③至少包含一个终结符号

④除自身外不再包含其它终结符号 ⑤除自身外不再包含其它非终结符号 ⑥除自身外不再包含其它短语

⑦除自身外不再包含其它素短语 可选项有:

a、①④ b、①⑤ c、①⑥ d、②④ e、③⑤ f、③⑦ g、②⑦

11、文法的二义性和语言的二义性是两个____________概念。

a、不同 b、相同 c、无法判断

12、在编译中产生语法树是为了____________。

a、语法分析 b、语义分析 c、词法分析 d、产生目标代码 13、下列正规表达式中________与(a|b)*(c|d)等价。

a、(a*|b*)(c|d) b、(a*|b*)*(c|d) c、(ab)*(d|c) d、(a*b*)(cd) 15、_______这样的语言,他们能被确定的有限自动机识别,但不能用正规表达式表示: a、存在 b、不存在 c、无法判定是否存在

16、文法G[S]:S→aS S→W S→U U→a V→bV V→ac W→aW 其中的全部无用符号是( )

a、(W,V,U) b、(V,b)c、(W,V,a, b ,c)d、(W,V,b,c) 16、ab的另一种表示方法是( )

a、abbb b、ababab c、abbaab d、aaabbb

17、编译过程中,比较常见的中间语言有___________。 ①波兰表示 ②逆波兰表示 ③三元式 ④四元式 ⑤树形表示

可选项有:a、①③④ b、②③④ c、③④①⑤ d、②③④⑤ 18、-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*+-

19、在编译程序中安排中间代码生成的目的是_______________。 ①便于进行存储空间的组织 ②利于目标代码优化 ③利于编译程序的移植 ④利于目标代码的移植

⑤利于提高目标代码的质量 可选项有:

a、②④⑤ b、①②③ c、③④① d、②③④⑤

20、设有文法G[S]=({b},{S,B},S,{S→b|bB, B→bS}),该文法描述的语言是( )。 a、{b2i+1 | i≥1} b、{b2i+1 | i≥0} c、{bi | i≥0} d、{b2i | i≥0} 一、选择题(本大题共20小题,每小题1分,共20分)

1、要在某一台机器上为某种语言构造一个编译程序,必须找掌握下述三方面的内容:______。

①高级语言 ②源语言 ③目标语言 ④程序设计方法 ⑤编译方法 ⑥测试方法 ⑦机器语言

可选项有 ①②③④⑤⑥⑦

a、①③⑤ b、①②⑥ c、②③⑤ d、②④⑦ 2、“用高级语言书写的源程序都必须经过编译,产生目标代码后才能投入运行。”这种说法___________。

a、不正确 b、正确

3、若一个文法是递归的,则它所产生的句子个数___________。

3

a、必定是无穷的 b、是有限个的 c、根据具体情况而定 4、下列文法__________二义文法

E::=EiT|T T::=T+F|iF|F F::=ET|(

可选项有: a、是 b、不是 c、无法判断。

5、编译程序的语法分析器接受以________为单位的输入,并产生有关信息供以后各阶段使用。可选项有: a、表达式 b、产生式 c、 单词 d、语句

6、文法G[Z]:Z→Be A→Ae|e B→Af D→f 中,________是多余产生式

a、 Z→Be b、 A→Ae|e c、B→Af d、D→f 7、算符优先文法属于________。

a、自顶向下语法分析法 b、LR分析法 c、SLR分析法 d、自底向上语法分析法

8、设有文法G[S]=({a},{S,B},S,{S→a|aB, B→aS}),该文法描述的语言是_____ a、{a|i≥0} b、{ a|i≥0} c、{ a|i≥0} d、{ a9、描述语言L={ambn|n≥m≥1}的文法是__________

i

2i

2i+1

2i+1

|i≥1}

a、Z→ABb b、Z→ABb c、Z→Ab d、Z→aAb

A→aA|a A→Aa|a A→aAb|a A→Ab|aAb|ε B→bB|b B→aBb|b

10、一个句型中的最左_______称为该句型的句柄。

a、短语 b、直接短语 c、素短语 d、终结符号

11、通常高级语言的词法规则可用正规式描述,词法分析器可用_________来实现 a、语法树 b、有限自动机 c、栈 d、堆

12、文法G[S]:S→AA A→Aa|a不是LR(1)文法,理由是_________。 a、FIRST(S)∩FIRST(A)≠? b、FIRST(A)∩FOLLOW(A)≠? c、FIRST(Aa)∩FIRST(a)≠? d、都不是

13、素短语是指_______的短语。

①至少包含一个符号

②至少包含一个非终结符号 ③至少包含一个终结符号

④除自身外不再包含其它终结符号 ⑤除自身外不再包含其它非终结符号 ⑥除自身外不再包含其它短语 ⑦除自身外不再包含其它素短语

可选项有:

a、①④ b、①⑤ c、①⑥ d、②④ e、③⑤ f、③⑦ g、②⑦

14、给定文法G[S]:S→ACc A→aA|Sb C→Def D→hACDd|eC| E→bDe|ε 该文法是____________。 (1)右线性文法 (2)前后文无关文法 (3)左递归文法 (4)LL(1)文法

可选项有:

a、② b、③ c、②③ d、②③④

15、算符文法是指____________的文法。

①没有形如U→?VW?的规则 (U、V、W为非终结符) ②终结符号集中任意两个符号对之间至多有一种优先关系成立

③没有相同的规则右部

④没有形如U→ε的规则 可选项有

a、① b、①② c、①②③ d、①②③④ 16、下列正规表达式中________与(a|b)*(c|d)等价。

a、(a*|b*)(c|d) b、(a*|b*)*(c|d) c、(ab)*(d|c) d、(a*b*)(cd)

17、若一个句型中出现了某一产生式的右部,则此右部_______是该句型的句柄 a、一定 b、不一定

18、前后文无关文法和正规文法所产生的语言类相比_______ a、前后文无关文法产生的语言类大 b、正规文法产生的语言类大 c、两者产生的语言类一样大 d、无法比较 19、编译过程中,比较常见的中间语言有___________。 ①波兰表示 ②逆波兰表示 ③三元式 ④四元式

⑤树形表示

可选项有:a、①③④ b、②③④ c、③④①⑤ d、②③④⑤ 20、LL(1)文法的条件是_______________。

a、对形如U→X1|X2|?|Xn的规则,要求FIRST(Xi))∩FIRST (Xj)=? (i≠j) b、对形如U→X1|X2|?|Xn的规则 若Xi?* ε 则要求FIRST(Xj) ∩FOLLOW (U)=? c、a和b d、都不是 一、 填空题(每空1分,共20分)

1、假设G是一个文法,S是文法的开始符号,如果S*?X,则称X是 。 2、乔姆斯基定义的四种形式语言分别为: 文法、 文法、 文法、 文法。

3、设有文法G[I]:

I→I1|I0|Ia|Ic|a|b|c ,下列符号串中是该文法的句子的有 (1)ab0 (2)a0c01 (3)aaa (4)bc10

4、一个上下文无关文法G包含四个组成部分依次为:一组 ,一组 ,一个 ,以及一组 。

5、确定的有穷自动机是一个 ,通常表示为 。 6、编译程序一般含有八部分,

是 、 、 、 、 、 、 、 。

选择题(本大题共20小题,每小题1分,共20分) 1、描述一个语言的文法是___________。

a、唯一的 b、不唯一的 c、个数有限的

2、汇编程序是将______翻译成______;编译程序是将_______翻译成__________。 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、生成非0开头的正偶数集的文法是______________。 a、Z::=ABC c、Z::=ABC|2|4|6|8 C::=0|2|4|6|8 C::=0|2|4|6|8 B::=BA|B0|ε B::=BA|B0|0 A::=1|2|3|4|5|6|7|8|9 A::=1|2|3|4|5|6|7|8|9 b、Z::=ABC d、Z::=ABC|2|4|6|8 C::=0|2|4|6|8 C::=0|2|4|6|8 B::=BA|B0|0 B::=BA|B0|ε

A::=1|2|3|4|5|6|7|8|9 A::=1|2|3|4|5|6|7|8|9 5、一个上下文无关文法G包括四个组成部分依次为:一组_____、一个_____、一组_____、一组______。

a、字符串 b、字母数字串 c、产生式 d、结束符号 e、开始符号 f、文法 g、非终结符号 h、终结符号 6、现有前缀表示的表达式文法G1:

E::=-EE E::=-E E::=a|b|c

则文法的句子—a-bc的所有可能语法树有______棵。 a、1 b、2 c、3 d、4

7、下列文法__________二义文法

E::=EiT|T T::=T+F|iF|F F::=E*|(

可选项有: a、是 b、不是 c、无法判断。 8、语法分析的常用方法是_________:

①自顶向下 ②自底向上 ③自左向右 ④自右向左 可选项有:

a、①②③④ b、①② c、③④ d、①②③

9、LR(K)文法是_________。

a、从左到右分析,共经过K步的一种编译方法。

b、从左到右分析,每次向前预测K步的一种编译方法。

c、从左到右分析,每次向貌似句柄的符号串后看K个输入符号的一种编译方法。 d、从左到右分析,每次走K步的一种编译方法。 10、素短语是指_______的短语。 ①至少包含一个符号 ②至少包含一个非终结符号 ③至少包含一个终结符号

④除自身外不再包含其它终结符号 ⑤除自身外不再包含其它非终结符号 ⑥除自身外不再包含其它短语 ⑦除自身外不再包含其它素短语 可选项有:

a、①④ b、①⑤ c、①⑥ d、②④ e、③⑤ f、③⑦g、②⑦ 11、文法的二义性和语言的二义性是两个____________概念。 a、不同 b、相同 c、无法判断