编译原理阶段练习二

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编译原理练习二

一、填空题

1、假设G是一个文法,S是文法的开始符号,如果S⇒*x则称x是句型。

2、文法G产生的句子的全体是该文法描述的语言。

3、文法G[S]:S→AB A→aA|εB→bBc|bc描述的语言L(G[S])=

{a n b m c m | n≥0,m≥1} 。

4、已知文法G[E]:

E→T|E+T|E-T

T→F|T*F|T/F

F→(E)|i

该文法的开始符号是 E ,终级符号集合V T是{+ ,- ,* ,/ ,( ,) ,i },非终级符号集合V N是{E, T, F},句型T+T*F+i的短语有T+T*F+i, 第一个T,T*F和i。改写该文法以消除直接左递归,改写后的文法为:E→T{(+|-)T}, T→F{(*|/)F} , F→

(E)|i 。

5、乔姆斯基定义的四种形式语言文法分别为:0型文法(又称短语文法)、1型文法(又称上下文有关文法)、2型文法(又称上下文无关文法)、3型文法(又称正规文法)。

6、自顶向下语法分析方法的基本思想是:从识别符号出发,不断建立

直接推导,试图构造一个推导序列,最终由它推导出与输入符号串相同的

符号串。

7、递归下降法的主要原理是,对每个非终极符按其产生式结构产生相应语法分析子程序,其中的终极符产生匹配命令,而非终极符则产生调用命令,由于文法递归相应子程序也递归,所以称这种方法为递归子程序方法或递归下降法。

8、LL(K)分析法中,“K”的含义是向输入串中查看k个输入符号。

9、自底向上语法分析方法的基本思想是:从待输入的符号串开始,利用文法的规则步步向上进行直接归约,试图归约到文法的开始符号。

10、LR(0)分析法的名字中,“L”的含义是从左到右进行分析,“R”的含义是采用最右推导的逆过程——最左归约,“0”的含义是向貌似句柄的符号串后查看0个输入符号。

二、选择题(单项或多项)

1、文法G所描述的语言是 d 的集合。

a.文法G的字汇表V中所有符号组成的符号串

b.文法G的字汇表V的闭包V*中的所有符号串

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

d.由文法的开始符号推出的所有终极符号串

2、巴科斯-诺尔范式(即BNF)是一种广泛采用的 c 的工具。

a.描述规则

b.描述语言

c.描述文法

d.描述句子

3、描述语言L={a m b n|n≥m≥1}的文法为 d 。

a. Z→ Abb

b. Z→ABb

A→aA|a A→Aa|a

B→bB|b B→aBb|b

c. Z→Ab

d. Z→aAb

A→aAb|a A→Ab|aAb|ε

4、I→I1|I0|Ia|Ic|a|b|c

下列符号串中是该文法的句子的有 b c d .

a. ab0

b. a0c01

c. aaa

d. bc10

5、若一个文法是递归的,则它所产生语言的句子个数 a 。

a.必定是无穷的

b.是有限个的

c.根据具体情况而定

6、一个句型中的最左b 称为给句型的句柄。

a. 短语

b. 简单短语

c. 素短语

d. 终极符号

7、一个上下文无关文法G包括四个组成部分依次为:一组g ,一组h ,一个 e ,以及一组 c 。

a. 字符串

b. 字母数字串

c. 产生式

d. 结束符号

e. 开始符号

f. 文法

g. 非终极符号

h. 终极符号

8、下列文法 a 二义文法

E→EiT|T

T→T+F|iF|F

F→E*|(

a. 是

b. 不是

c. 无法判定

9、编译过程中,语法分析器的任务是 b c d 。

a.分析单词是怎样构成的

b.分析单词串是如何构成语句和说明的

c.分析语句和说明是如何构成程序的

d.分析程序的结构

10、语法分析的常用方法是 a b 。

a. 自顶向下

b. 自底向上

c. 自左向右

d. 自右向左

11、编译程序中的语法分析器接受以 c 为单位的输入,并产生有关信息供以后各阶段使用。

a. 表达式

b. 产生式

c. 单词

d. 语句

12、高级语言编译程序常用的语法分析方法中,递归下降分析方法属于 a 分析方法。

a. 自顶向下

b. 自底向上

c. 自左向右

d. 自右向左

13、LL(1)文法的条件是 c 。

a. 对形如U♑x1| x1|… | x n的规则,要求FIRST(x i)⋂ FIRST(x j)=∅, (i≠j)

b. 对形如U♑x1| x1|… | x n的规则,若x i ⇒*ε,要求FIRST(x j)⋂ FOLLOW(U)=∅

c. (a)和(b)

d. 都不是

14、已知文法G[E]:

E♑TE’

E’♑+TE’|ε

T♑FT’

T’♑*FT’|ε

F♑(E)|id

FOLLOW(F)= {*,+,#,}},FIRST(T’)= {*,ε}。

a. {*,+}

b. {*,ε}

c. {+,#,)}

d. {*,+,#,)}

e. {#,)}

f. {*,+,#,),id}

15、LR语法分析栈中存放的状态是识别b 的DFA状态。

a. 前缀

b. 可归前缀

c. 项目

d. 句柄

三、设有文法G[S]:

S♑A

A♑B|IF A THEN A ELSE A

B♑C|B+C|+C

C♑D|C*D|*D

D♑x|(A)|-D

(1)试问其中哪些是终极符号,哪些是非终极符号

(2)对于下列符号串:

(x*-x)

IF x+x THEN x*x ELSE -x

●IF -x THEN x ELSE IF x THEN x+x ELSE x

试分别构造其推导的语法分析树,并指出句柄。

相关文档
最新文档