- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理分知识点习题 词法分析和有穷自动机
1. 将图1所示的有穷自动机转换成与其等价的正规文法,其中4、5为终止状态。
解答:本题考查有穷自动机到正规文法的转换方法。
这类题只需要书中所介绍的方法进行即可得到正规文法,本题有穷自动机对应的正规文法G[S]为:
A→aB|bB|cC
B→aB|bD|aE|cC|b|a
C→bB|cC|cE|c
D→bD|b
E→aE|a
12
1
2
3
4
5
start
a
b
b
c
b
c
a
a
c
b
图1有穷自动机的状态转换图
2.给定如图2所示的有穷自动机,试用正规表达式给出它能接受的语言集合。
01
0
1
2
3
a
a
a
b
b
a
b
b
图2有穷自动机
解:本题考查正规表达式与有穷自动机的等价性。
对于一个在输入字母表∑上的FAM,一定可以在字母表∑上构造一个正规表达式e,使得L(e)=L(M) .
根据状态转换图,从开始状态出发,可以有任意个(包括0个)b作为句子的开始部分;从0状态出发,每输入一个a,不许输入两个b才能到达终止状态后,还可以通过输入a回到状态1,或输入b回到状态0,然后进入递归过程,再输入相同的符号串,所以,该有穷自动机描述的语言为:
(b*(aa*b)*b)*
3. 构造下述正规表达式的DFA。
Xy*|yx*y|xyx
解: 本题考查由正规表达式构造有穷自动机的方法,
本题可按照由正规表达式构造等价的NFA,NFA确定化,DFA最小化3步进行求解。
根据题中所给的正规表达式得到相应的DFA如图3所示。
ySA
y
S
A
B
F
G
D
E
Z
C
x
y
x
x
x
y
y
ε
ε
ε
ε
图3正规表达式Xy*|yx*y|xyx的DFA。
依据该NFA采用子集法构造确定DFA其过程如表1(已换名)所示。
表1 将NFA确定化为DFA的过程
I
Ix
Iy
[S]
0
[A, B, F, Z]
1
[C, D, E]
2
[A, B, F, Z]
1
[B, G, Z]
3
[C, D, E]
2
[D, E]
4
[Z]
5
[B, G, Z]
3
[Z]
5
[B, Z]
6
[D, E]
4
[D, E]
4
[Z]
5
[Z]
5
[B, Z]
6
[B, Z]
6
以所有包含NFA的终止状态Z的DFA状态作为终止状态,得到DFA相应的状态转换图如 图4所示
02
0
2
4
5
5
6
1
3
x
x
x
x
y
y
y
y
y
y
图4 DFA的状态转换图
对DFA进行最小化,过程如下:
已知K={0,1,2,3,4,5,6}。首先将K分成两个子集
K1={0,2,3} (非终态集)
K2={1,3,4,6} (终态集)
在状态集合K1={0,2,3}中,因为
{0}x={1}?K2
{2,4}x={4}?K1
所以状态0与状态2,4不等价,故K1可分割为
K11={0} K12={2,4}
在状态集合K12={2,4}中,因为有
{2,4}x={4} {2,4}y={5}?K2
所以,状态2和状态4等价。
在状态集合K2={1,3,4,6}中,状态5无输入,状态3有x、y输入,状态1与状态6只有y输入,所以可将K2分割为
K21={1,6} K22={3} K23={5}
在状态集合K21={1,6}中,状态1输入y到达状态3,状态6输入y到达状态6,所以状态1与6也不等价。进一步将K21分割为
K211={1} K212={6}
于是,将原状态集合划分为:{0}、{2,4}、{1}、{3}、{5}、{6}。
选{2,4}中的2作为代表,原来由状态4导入(出)其余状态的弧改为有状态2导入(出);然后消去状态4。最后得到最小化后的状态转化图如图5所示。
02
0
2
5
5
6
1
3
x
y
y
y
y
y
x
x
图5正规表达式Xy*|yx*y|xyx的最小化DFA
4. 构造正规表达式(011)*00相应的DFA。
解:本题考查由正规表达式构造确定的有穷自动机的方法。
构造正规表达式(011)*00的DFA。
按照图3.2所示的转换规则构造正规表达式(011)*00对应的NFA如图6所示。
SB
S
B
C
Z
A
0
ε
1
0
ε
0
图6正规表达式(011)*00的DFA
由正规表达式(011)*00的NFA构造确定的有穷自动机DFA。
以NFA的开始状态S的ε闭包ε-CLOSURE({S})作为DFA的开始状态,采用子集法将图3.43中所式的NFA确定化,其过程如表2所示。
您可能关注的文档
最近下载
- 河南省许昌市2025年某中学小升初入学分班考试英语考试真题含答案.docx VIP
- 大型泵站工程运行管理实施方案.docx
- ISO45001-2018职业健康安全管理体系之4-2:“4 组织及环境-4.2理解工作人员和其他相关方的需求和期望”解读和应用指导材料(2024A1-雷泽佳).docx VIP
- 医疗信息系统的网络安全数据标注指南.docx
- SH∕T 3543-2017 石油化工建设工程项目施工过程技术文件规定 非正式版.pdf VIP
- 中国专利法详解读书重点笔记.doc VIP
- 2026届高考语文背诵诗词补充:《菩萨蛮·书江西造口壁》.pptx VIP
- 强制性条文执行计划(完整版).doc
- 关于夏天的课件.pptx VIP
- 2025中铁五局集团有限公司笔试参考题库附带答案详解.pdf
文档评论(0)