正规式描述c语言标识符的结构,编译原理复习最终版.doc

第一章

一. 单项选择

1.将编译程序分成若干“遍”,是为了( )

A.提高程序的执行效率

B.使程序的结构更为清晰

C.利用有限的机器内存并提高机器的执行效率

D.利用有限的机器内存但降低了机器的执行效率

2.一个编译程序在编译时,大多数时间花在( )上

A.出错处理

B.词法分析

C.目标代码生成

D.表格管理及处理

3. 下面代码不可能是目标代码的是( )

A. 汇编指令代码

B. 可重定位指令代码

C. 中间代码

D. 绝对指令代码

4. 解释程序和翻译程序的根本区别

A. 是否生成中间代码

B. 是否有语义分析阶段

C. 是否生成目标代码

D. 是否有语法分析阶段

5. 下面编译阶段既可以作为编译器的前端,也可以作为编译器的后端的是:( )

A. 语法分析阶段

B. 语义分析阶段

C. 中间代码生成阶段

D. 中间代码优化阶段

二. 多项选择

1. 一个编译器可能有的阶段为( )

A. 词法分析

B. 语法分析

C. 语义分析

D. 中间代码生成

E. 目标代码生成

2. 编译器的各个阶段的工作都涉及到( )

A. 表格处理

B. 词法分析

C. 语法分析

D. 语义分析

E. 出错处理

3. 一般来说,编译器可分为前端和后端,下列编译阶段可被划分为编译的前端的有:( )

A. 词法分析

B. 语法分析

C. 语义分析

D. 中间代码生成

E. 中间代码优化

判断题

一个编译器就是一个程序,该程序的输入是源程序,输出是与之等价的目标程序。

编译与解释程序的根本区别是:是否生成目标代码。

解释程序和编译程序的前端是相同的,其实现技术基本上也是相通的。

一般而言,中间代码是一种独立于具体硬件的记号系统。

综合题

请画出编译程序的总体框图。

源程序的解释和和编译执行的主要区别是什么?

第三章

一. 单项选择题

1.词法分析器的输出是:( )

A.单词在符号表中的位置

B.单词的自身值

C.单词的自身值和单词的种类码

D.单词的种类码

2.词法分析的依据是:( )

A.语义规则

B.构词规则

C.语法规则

D.等价变换规则

3. 两个DFA等价是指:( )

A. 这两个DFA的状态数相同

B. 这两个DFA的状态数和有向弧条数都相等

C. 这两个DFA的有向弧条数相等

D. 这两个DFA接受的语言相同

4. 词法分析器的输入是:( )

A. Token序列

B. 源程序

C. 目标程序

D. 符号表

5. 下列符号串不可以由符号集S={a,b}上的正闭包运算产生的是:( )

A. ε

B. a

C. aa

D. ab

二. 多项选择

1. 令S={a,b},则S上的符号串的全体可用下面的正规式表示。( )

A. (a|b)*

B. (a*|b*)*

C. (a|b)+

D. (ab)*

E. (a*b*)*

2. 下列符号串是符号集S={a,b}上的正规式的有:( )

A. ε

B. a

C. ab

D. (ab|a) (ab|a)

E. ab|ab

3. 正规式服从的代数规律有:( )

A. “或”运算服从交换律

B. “或”运算服从结合律

C. “连接”运算服从交换律

D. “连接”运算服从结合律

E. “连接”运算可对“或”运算进行分配

4. 令S={a,b},则S上的所有以b开头,后跟若干个(可为0个)ab的符号串的全体可用下面的正规式表示。( )

A.b (ab)*

B. (ba)*b

C. b(a|b)+

D. (ba)+b

E. b (a|b)*

三. 判断题

确定自动机是非确定自动机的特例。( )

字母表是元素的非空无穷集合,我们把字母表中的元素称为符号,因此字母表也称为符号集。( )

由字母表中的符号组成的任何有穷序列称为符号串。( )

在符号串中,符号的顺序是无关紧要,符号串ab就与ba是相同的符号串。( )

DFA可以采用五元组,状态转换图或者矩阵表示。( )

对于任何两个有穷自动机M和M′,如果L(M)=L(M′),则称M与M′是等价的。( )

?上一个符号串集Vì?*是正规的,当且仅当存在一个?上的确定有穷自动机M,使得V=L(M)。( )

一个DFA只可能有一个开始状态。( )(改为终止状态?)

与NFA等价的DFA(不考虑重构)可能有多个。( )

与NFA等价的最小化DFA(不考虑重构)只能有一个。( )

两个DFA,如果其状态图的状态个数不相同,则这两个DFA必不等价。( )

设有两个正规式r,s,则有L(r|s)=L(r)|L(s)。( )

对任意正规式e,都存在DFA M,使得L(M)=L(e)。( )

四. 综合题

写出描述C语言标识符的正规式。

某DFA的状态转换表(即矩阵表示)如图2-1,试写出该DFA的五元组式形式和状态转换图。(其中状态上标为0表示该状态为开始状态,为*表示该

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值