编译原理作业集-第三章-修订版
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章词法分析
本章要点
1.词法分析器设计,
2.正规表达式与有限自动机,
3.词法分析器自动生成。
本章目标:
1.理解对词法分析器的任务,掌握词法分析器的设计;
2.掌握正规表达式与有限自动机;
3.掌握词法分析器的自动产生。
本章重点:
1.词法分析器的作用和接口,用高级语言编写词法分析器等内容,它们与词法分析器的实现有关。应重点掌握词法分析器的任务与设计,状态转换图等内容。
2.掌握下面涉及的一些概念,它们之间转换的技巧、方法或算法。
(1)非形式描述的语言↔正规式
(2)正规式→ NFA(非确定的有限自动机)
(3)NFA → DFA(确定的有限自动机)
(4)DFA →最简DFA
本章难点
(1)非形式描述的语言↔正规式
(2)正规式→ NFA(非确定的有限自动机)
(3)NFA → DFA(确定的有限自动机)
(4)DFA →最简DFA
作业题
一、单项选择题
(按照组卷方案,至少15道)
1. 程序语言下面的单词符号中,一般不需要超前搜索
a. 关键字
b. 标识符
c. 常数
d. 算符和界符
2. 在状态转换图的实现中,一般对应一个循环语句
a. 不含回路的分叉结点
b. 含回路的状态结点
c. 终态结点
d. 都不是
3. 用了表示字母,d表示数字, ={l,d},则定义标识符的正则表达式可以是:。
(a)ld*(b)ll*(c)l(l | d)*(d)ll* | d*
4. 正规表达式(ε|a|b)2表示的集合是
(a){ε,ab,ba,aa,bb} (b){ab,ba,aa,bb}
(c){a,b,ab,aa,ba,bb} (d){ε,a,b,aa,bb,ab,ba}
5. 有限状态自动机可用五元组(V T,Q,δ,q0,Q f)来描述,设有一有限状态自动机M的定义如下:
V T={0,1},Q={q0,q1,q2},Q f={q2},δ的定义为:
δ(q0,0)=q1δ(q1,0)=q2
δ(q2,1)=q2δ(q2,0)=q2
M所对应的状态转换图为。
6. 有限状态自动机可用五元组(V T,Q,δ,q0,Q f)来描述,设有一有限状态自动机M的定义如下:
V T={0,1},Q={q0,q1,q2},Q f={q2},δ的定义为:
δ(q0,0)=q1δ(q1,0)=q2
δ(q2,1)=q2δ(q2,0)=q2
M所能接受的语言可以用正则表达式表示为。
①(0|1)*②00(0|1)*③(0|1)*00④0(0|1)*0
7 . 有限状态自动机可用五元组(V T,Q,δ,q0,Q f)来描述,设有一有限状态自动机M的定义如下:
V T={0,1},Q={q0,q1,q2},Q f={q2},δ的定义为:
δ(q0,0)=q1δ(q1,0)=q2
δ(q2,1)=q2δ(q2,0)=q2
M所能接受的语言为。
①由0和1所组成的符号串的集合
②以0为头符号和尾符号、由0和1所组成的符号串的集合
③以两个0结束的,由0和1所组成的符号串的集合
④以两个0开始的,由0和1所组成的符号串的集合
8. 从接受语言的能力上来说,非确定型有穷自动机和________是等价的。
a. ⅰ.正规式;ⅱ.上下文无关文法;ⅲ.确定性有穷自动机;
b. ⅰ.左线性正规文法;ⅱ.右线性正规文法;ⅲ.确定性有穷自动机;
c. ⅰ.正规式;ⅱ.上下文无关文法;ⅲ.正规文法;
d. ⅰ.正规式;ⅱ.确定性有穷自动机;ⅲ.下推自动机;
9. 下面四个选项中,关于编译过程中扫描器的任务的叙述,________是较为完整且正确的。
①组织源程序的输入;按词法规则分割出单词,识别其属性,并转换成属性字的形式输出;删除注释;删除空格和无用字符;行计数、列计数;发现并定位词法错误;建立符号表。
②按词法规则分割出单词,识别其属性,并转换成属性字的形式输出;发现并定位词法错误;建立符号表;输出状态转换图;把状态转换图自动转换成词法扫描程序。
③组织源程序的输入;按词法规则分割出单词,识别其属性,并转换成属性字的形式输出。
④组织源程序的输入;按词法规则分割出单词,识别其属性,并转换成属性字的形式输出;行计数、列计数;发现并定位词法错误;建立符号表;输出状态转换图;把状态转换图自动转换成词法扫描程序。
10. 关于NFA的叙述中,下面______是不正确的。
A.有一个有穷字母表
B.有多个初始状态
C.有多个终止状态
D.有多个有限状态
11. 词法分析的理论基础是。
A.有穷自动机理论
B.图灵机理论C.图论D.无穷自动机理论
12. 设有两个状态S和T,如果从S出发能读出某个字w而停于终态,那么从T出发也能读出同样的字而停于终态;反之,果从T出发能读出某个字w而停于终态,那么从S出发也能读出同样的字而停于终态。则我们称状态S和状态T是。
A. 可区分的;
B. 等价的;
C. 多余的;
D. 无用的。
13. 词法分析器的输出结果是。
A、单词自身值
B、单词在符号表中的位置
C、单词的种别编码
D、单词的种别编码和自身值
14. 编译过程中扫描器的任务包括______。
①组织源程序的输入
②按词法规则分割出单词,识别出其属性,并转换成属性字的形式输出
⑧删除注解
④删除空格及无用字符
⑤行计数、列计数
⑥发现并定位词法错误
⑦建立符号表
a.②③④⑦b.②③④⑥⑦c.①②③④⑥⑦d.①②③④⑤⑥⑦
15. 下述正则表达式中______与(a*+b)*(c+d)等价(即有相同符号串集)。(x+y亦可写作x|y)
①a*(c+d)+b(c+d)
②a*(c+d)*+b(c+d)*
③a*(c+d)+b(c+d)
④(a+b)*c+(a+b)*d
⑤(a*+b)*c+(a*+b)*d
a.①③
b. ③④⑤
c.③
d.④⑤
16、正则式的“*”读作______。
a,并且L或者c.连接d.闭包