编译原理试题

发布 2024-04-16 19:20:10 阅读 4052

一、选择题(共20题,每题2分,共40分)

1.解释程序和编译程序的区别在于( )

a.是否生成中间** b.加工的对象不同

c.使用的实现技术不同 d.是否生成目标程序。

2.文法g:s→[s]|[所产生的语言是( )

a.[m]n (m,n>0) b.[m]n(m,n>1) c.[m]m(m>=1) d.[n]n(n>=0)

3.如果一个文法g是无二义性文法,则对任一个句子x∈l(g),该句子( )

a.可能存在两个不同的最右推导 b.可能存在两个不同的最左推导。

c.最左推导和最右推导不同 d.仅存在一个最左推导和一个最右推导。

4.一个语言的文法是( )

a.有限的 b.不唯一的 c.唯一的。

5.乔姆斯基把文法分为四种类型,即0型,1型,2型,3型。2型文法也称为( )

a.上下文无关文法 b.上下文有关文法 c.正则文法 d.短语文法。

6.( 正规文法能产生语言l=。

a.存在一个 b.不存在 c.可能存在,也可能不存在。

7.同正规表达式(a|b)*等价的正规表达式是( )

a.(a|b)+ b.(a*|b*)*c.(ab)* d.(a*|b*)+

8.如果一个有穷自动机所能识别的字符串集合是无穷的,则它必( )

a.含有多个状态 b.含有多条有向边 c.含有多个终止状态 d.含有回路。

9.称有穷自动机a1和a2等价是指( )

和a都是定义在一个字母表σ上的有穷自动机。

和a2 状态数和有向边数相等。

和a2 状态数或有向边数相等。

和a2 所能识别的字符串集合相同。

10.设有文法g(s为开始符号)

s→ap|bq

a→a|ca

b→b|db

first(ap

d.其他答案。

11.一个文法g,若( )则称它是ll(1)文法。

中不含左递归。

无二义性。的ll(1)分析表不含多重定义。

中产生式不含左公因子。

12.在递归子程序方法中,如果文法存在左递归,则会使分析过程产生( )

a.回溯 b.非法调用 c.有限次调用 d.无限循环。

13.在lr(0)的action子表中,如果某一行中存在标记为"ri”的栏,则( )

a.该行必定填满ri b.该行未填满ri c.其他行也有ri 子表中也有ri

14.若a为终结符,则a→a·aβ为( )项目。

a.归约 b.移进 c.接受 d.待约

15.两个lr(1)项目集如果除去( )后是相同的,则称这两个lr(1)项目同心。

a.项目 b.活前缀 c.搜索符 d.前缀

16.表达式-a+b*(-c+d)的逆波兰是( )

17.活动记录中的老sp地址是( )

a.返回地址 表首址 c.0层活动记录地址 d.上一个活动记录地址。

18.过程的display表中记录了( )

a.过程的连接数据 b.过程的嵌套层次 c.过程的返回地址 d.过程的入口地址。

19.程序所需的数据空间在程序运行前就可确定,称为( )管理技术。

a.动态存储 b.栈式存储 c.静态存储 d.堆式存储

20.对于下面程序:

program reference(input,output);

var a,b : integer;

procedure p (x,y,z) ;

beginy:=y+1;

z:=z+x;

end;begin

a:=2;b:=3;

p (a+b , a , a)

print a

end若参数传递的方法为传值,执行时所输出的a为( )

a.9 b.8 c.2 d.10

二、判断题(共10题,每题1分,共10分)

1.编译程序是应用软件。(

2.设有文法符号集v,则vt∩vn=v。(

3.任意一个句型的句柄是唯一的。(

4.语法分析的任务是分析语句是如何构成程序的。(

文法肯定是无二义的,一个二义文法决不会是lr 文法。(

6.判断文法g是否是lalr(1)文法,则文法g必须是lr(1)文法。(

7.语法分析时必须先消除文法中的左递归。(

8.使用语法制导翻译方法的编译程序能同时进行语法分析和语义分析。(

9.动态数组的存储空间在编译时就可以完全确定。(

10.翻译算术表达式语句时不需要用到回填技术。(

三、解答题(共8题,共50分)

1.(1)构造生成语言为:l=的文法。

(2)写出文法g1:z→azb|ε 生成的语言。

2. 对文法g[s]

s→(b)|(as)

a→(saa)|(a)

1)画出句型(((b)a(a))s)的语法树(3分)

2)写出上述句型的所有的直接短语,句柄(2分)

3.有nfa图如下,将其转换为dfa

4. 设有以下文法:

g[s]: s→abcd|cd

b→bb|b

d→d|dd

1)对文法g消除左递归和左因子构造等价的文法g’

2)求出g’每一个非终结符的follow集。

5.对于文法a→aa|a

1)构造它的lr(0)项目集规范族。

2)构造它的slr(1)分析表。

6.表达式a*b-(c+d)/e的逆波兰式、三元式、四元式序列。

7.在一个移入——归约的分析中采用以下的语法制导的翻译模式,在某产生式归约时,立即执行括号中的动作。

s→bab

a→(b

a→a b→aa)

若输入序列为 b(((aa)a)a)b, 输出的字符串是什么?

编译原理试题

语法分析 自顶向下的分析。重点与难点。重点 自顶向下分析的基本思想,分析器总体结构,分析表的构造,递归下降分析法基本思想,简单算术表达式的递归下降分析器。难点 first和follow集的求法,对它们的理解以及在构造ll 1 分析表时的使用。递归子程序法中如何体现分析的结果。基本要求。掌握语法分析 ...

编译原理试题

编译原理模拟试题。班级姓名学号。1 20分 写出字母表 上语言l 的正规式,并画出接受该语言的最简dfa。2.10分 计算文法g m 的每个非终结符的first和follow集合,并判断该文法是否是ll 1 的,请说明理由。g mm tb t ba b db et d d 3.10分 写一个文法使其...

编译原理试题

东南大学。一 文法g1 e et t t tf f f fp p p e i1 试证明符号串tet i 是g1的一个句型 要求画出语法树 2 写出该句型的所有短语,简单短句和句柄。三 1 试写出一个上下文无关文法g3,它能产生配对的圆括号串 例如等,甚至包含0对括号 2 使用文法g3给出输入串 的自...