编译原理作业集 第二章

发布 2022-07-14 13:32:28 阅读 4430

1. 程序语言的定义;

2. 高级程序语言一般结构和主要共同特征;

3. 正确理解上下文无关文法基本概念,包括:

文法的定义、推导、句型、句子、语言、语法树、二义性等;

4. chomsky文法分类;

掌握和理解程序语言的定义、高级语言的一般特征及程序语言的语法描述。

1. 语法,词法规则与语法规则;

2. 语义和语义规则;

3. 数据类型与操作;

4. 推导,最左推导和最右推导;

5. 语法分析树和二义性;

1. 二义性文法;

2. chomsky各个文法类;

按照组卷方案,至少15道小题)

1. chomsky把文法分成四种类型,0型、1型、2型和3型。3型文法也称为2型文法也称为。

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

2. 许多广为使用的语言,如fortran、c、pascal等,属于 。

a. 强制式语言 b. 应用式语言 c. 基于规则的语言 d. 面向对象的语言。

3. 设g是一个文法,s是开始符号。若s*,(vt∪vn)*,则称是一个 。

a. 句子 b. 句型 c. 推导 d. 语言。

4. 一个数据类型通常包括的三种要素中,没有下面的 。

a. 用于区别这种类型的数据对象的属性;b. 这种类型的数据对象可以具有的值;

c. 对这种类型的数据对象的内存分配;d. 可以作用于这种类型的数据对象的操作;

5. chomsky把文法分成四种类型,其中, 也称正规文法。

a. 0型 b. 1型 c. 2型 d. 3型。

6. 语言的词法规则一般用chomsky的型文法来描述:

a. 0 b. 1 c. 2 d. 3

7. 文法。

s→(l)|a

l→l,s|s

中,下面是该文法中的终结符号。

a. s b. ,c. l d. |

8. 文法g所描述的语言是的集合。

a. 文法g的字母表中的所有符号组成的符号串;

b. 文法g的字母表的闭包*中的所有符号串;

c. 文法g的识别符号推出的所有符号串;

d. 文法g的识别符号推出的所有终结符号串;

9. 语言l=,该语言是语言。

a. 3型语言,b. 2型语言,c. 1型语言,d. 0型语言。

10. 设有文法g:

i→i1 | i0 | ia | ic | a | b | c |

下面符号串中不是该文法的句子是。

a. ab0b. a0c01, c. aaa, d. bc10

11. 给定文法a→ba|cc,下面的符号串中,是该文法句子的是___

a. bcbc, b. bbbcc, c. bcbcc, d. bccbcc;

12. chomsky定义的四种形式语言文法中,2型文法可由( g )识别。

a. 图灵机;b. 确定性有限自动机;c. 下推自动机;d. 非确定性有限自动机;

13. 若文法g定义的语言是无限集,则文法必然是。

a. 上下文无关的 b. 递归的 c. 二义性的 d. 无二义性的。

14. 文法 s→aas|abc 定义的语言是。

a. b.

c. d.

15. 文法:g:s→xsx | y所识别的语言是。

a. xyxb. (xyxc. x*yx* d. xnyxn(n≥0)

一.答案:1. c.

;2. a.;3.

b;4. c;5. d;6.

d;7. b;8. d;9.

d;10. a;11. b;12.

c;13. b;

14. c;15. d;

按照组卷方案,至少15道小题)

1. 假设g是一个文法,是由终结符和非终结符组成的串,s是文法的开始符号,如果s=>*则称是。

2. 在赋值语句中,赋值号‘:=左右两边的变量名扮演着两种不同的角色,为了区分一个名字的这两种特征,我们把一个名字所代表的称为该名的左值,把一个名字的称为该名字的右值。

3. 对于文法g,仅含终结符号的句型称为。

4. 设有文法g[s],其部分产生式:

e→e+t | t

t→t*f | f

f→(e) |a

则vnvt5. 由文法产生的集合是文法产生的语言。

6. chomsky语法定义的3型文法又可以分为。

7. 一个上下文文法g的四个组成部分分别是。

8. 已知语言:,其语法定义为:g=(,s,p),其中p为。

9. 已知某语言的语法定义为:g=(,s, p ),且p: s→as | 则该语言为。

10. 已知某语言为*},其语法定义为g=(,s,p),其中p为。

11. 所谓最右推导是指。

12. 已知文法g(z):

e→et+|t

t→tf*|f

f→fp↑|p

a;s-|.q [八公山下p→e|i

试写出其识别的一个句子。

13. 文法g[s]:s→aa|a,a→as为___型文法,其确定的语言的为。

14. 在一棵语法树生长过程中的任何时刻就是一个句型。

15. 我们说g=(vt,vn,s,p)是一个0型文法,如果它的每一个产生式→是这样一种结构: 。

二.答案:1. 句型;2.

单元的地址(或者:单元、存储单元的地址),值(或者:单元的内容)3.

句子;4. vn=,vta};5. 句子;6.

右线性文法和左线性文法;7. 开始符号,产生式集合,终结符集合,非终结符集合;8. s→ab;a→aab|;b→abb|;9.

;10. s→asa|bsb|;11. 任何一步都是对中的最右非终结符进行替换。

12. iii↑*+13. ;14.

所有那些没有后代的末端结点从左到右排列起来;15. ∈vn∪vt)*且至少含有一个非终结符,而∈(vn∪vt)*。

按照组卷方案,至少15道小题)

1. 一棵语法树表示了一个句型所有的不同推导过程,包括最右推导和最左推导。 (

2. 可能有两个不同的文法g和g′,期中一个是二义的而另一个是无二义的,但是却有l(g)=l(g′)。

3. 变量既持有左值又持有右值,而常数和带有算符的表达式一般认为只持有右值。(

4. 文法g:

s→ba a→aa|a

定义的语言是所有以b开头的后跟至少一个a的字符串的集合。(

5. 设有文法g:

s→s*s | s+s | s) |a

该文法是二义的。(

6. 正则文法一定不是二义的。(

7. 上下文无关文法可以产生语言l=。(

8. 不存在任何正规文法能产生语言l=。(

9. 对于每一个左线性文法g1,都存在一个右线性文法g2,使得l(g1)=l(g2)。(

10. 正规文法产生的语言都可以用上下文无关文法来描述。(

11. 上下文无关文法比正规文法有更强的描述能力。(

12. 文法的二义性和语言的二义性在概念上是相同的,也就是说,对于某个语言,不可能存在两个以上的文法来描述它。(

13. 二义性是可以判定的,也就是说,可以编这么一个程序,输入该文法后,该程序能确切地给出该文法是否二义的答案。(

14. 说明语句旨在定义名字的性质。编译程序把这些性质登记在符号表中,并检查程序中名字的引用和说明是否一致。实际上,许多说明语句并不能翻译成相应的目标**。(

15. c语言是一个允许子程序嵌套定义的语言。(

三.答案:1. √2.

√3. √4. √5.

√6. ×7. √8.

√9. √10. √11.

√12. ×13. ×14.

√15. ×

按照组卷方案,至少3道小题)

1. 二义性文法;2. 推导和直接推导;3. 句型,句子和语言;4. 上下文无关文法;

5. 语法;6. 正规文法(左线性文法和右线性文法);

四.答案:1. 如果一个文法存在某个句子对应两棵以上不同的语法树,则称这个文法是是二义性文法。

2. 设a→是一个产生式,且、(vtvn)*,若a=>,则称a直接推出;或者说,是a的一个直接推导。

编译原理第二章作业

1.pl 0语言允许过程嵌套定义和递归调用,试问它的编译程序如何解决运行时的存储管理。pl 0 语言允许过程嵌套定义和递归调用,它的编译程序在运行时采用了栈式动态存储管理。数组 code 存放的只读目标程序,它在运行时不改变。运行时的数据区 s 是由解释程序定义的一维整型数组,解释执行时对数据空间 ...

编译原理答案第二章

第二章词法分析 2.1 完成下列选择题 1 词法分析器的输出结果是 c a.单词的种别编码 b.单词在符号表中的位置。c.单词的种别编码和自身值 d.单词自身值。2 正规式m1和m2等价是指 c a.m1和m2的状态数相等 b.m1和m2的有向边条数相等。c.m1和m2所识别的语言集相等 d.m1和...

编译原理第二章习题

第2章习题。1 文法g s 为 s ac ab a ab b bc 写出l g s 的全部元素。答案 s ac abc 或s ab abc 所以l g s 2 令文法g为 n d nd d 0 1 2 3 4 5 6 7 8 9 1 g的语言l g 是什么?2 给出句子0568的最左推导和最右推导。...