第四章词法分析.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

一、确定的有穷自动机DFA例4.3.2:证明t=baab被下图的DFA所接受bSUVQabba,baaf(S,baab)=f(f(S,b),aab)=f(V,aab)=f(f(V,a),ab)=f(U,ab)=f(f(U,a),b)=f(Q,b)=QQ属于终态。得证。第29页,共81页,星期日,2025年,2月5日DFA行为的程序模拟.DFAM=(K,Σ,f,S,Z)的行为的模拟程序K:=S;c:=getchar;whileceofdo{K:=f(K,c);c:=getchar;};ifKisinZthenreturn(‘yes’)elsereturn(‘no’)一、确定的有穷自动机DFA第30页,共81页,星期日,2025年,2月5日二、不确定的有穷自动机NFANFA定义:NFAN=(K,?,f,S,Z),其中K为有穷状态集,?为有穷输入字母表,f为K??到K的子集的映射,S?K是一个非空初态集,Z?K为终态集。NFA与DFA的区别主要有:NFA中状态转换函数为多值函数。NFA中起始状态可以有多个,但从正规文法出发构造的NFA起始状态是唯一的。第31页,共81页,星期日,2025年,2月5日二、不确定的有穷自动机NFA例4.3.3:NFAN=({S,P,Z},{0,1},f,{S,P},{Z})其中f(S,0)={P}f(S,1)={S,Z}f(P,1)={Z}f(Z,0)={P}f(Z,1)={P}SPZ00,1111状态图表示第32页,共81页,星期日,2025年,2月5日矩阵表示简化为二、不确定的有穷自动机NFA第33页,共81页,星期日,2025年,2月5日类似DFA,NFAN=(K,?,f,S,Z)也有如下定义:符号串t在NFAN上运行一个输入符号串t(将它表示成Tt1的形式,其中T∈∑,t1∈∑*)在NFAN上运行的定义为:f(Q,Tt1)=f(f(Q,T),t1)其中Q∈K.符号串t被NFAN接受若f(S0,t)=P,其中t?∑*,S0∈S,P?Z,则称t为NFAN所接受(识别)二、不确定的有穷自动机NFA第34页,共81页,星期日,2025年,2月5日符号串t被NFAN接受也可以这样理解对于任何一个符号串t(t∈∑*),若存在一条从某一初态到某一终态的道路,且这条道路上所有弧的标记字依序连接成的串(不计ε弧)等于t,则称t为NFAN所接受。二、不确定的有穷自动机NFA有了上述定义后,实际上也就是对NFA的转换函数

f进行了如下扩充:

f:K???K的子集?f:K??*?K的子集第35页,共81页,星期日,2025年,2月5日二、不确定的有穷自动机NFA例4.3.4:下列符号串哪些可以被图中NFA所接受?11110100010001100第36页,共81页,星期日,2025年,2月5日二、不确定的有穷自动机NFA例4.3.4:下列符号串哪些可以被图中NFA所接受?11110100010001100第37页,共81页,星期日,2025年,2月5日

若将NFAN所能接受的符号串的全体记为L(N),则有如下结论:对每个NFAN存在着与之等价的DFAM,使得L(M)=L(N)。并且最小的DFAM是唯一的。将NFA转换成等价的DFA的算法---子集法。二、不确定的有穷自动机NFA第38页,共81页,星期日,2025年,2月5日有关状态集合I的两个运算:1.状态集合I的ε-闭包,记为ε-closure(I),定义为一状态集,是由状态集I中的任何状态S经任意条ε弧而能到达的状态所构成的集合。状态集合I的任何状态都属于ε-closure(I)。2.状态集合I的a弧转换,记为move(I,a),是所有那些可从I中的某一状态经过一条a弧而到达的状态的全体。三、NFA的确定化第39页,共81页,星期日,2025年,2月5日12534687aa?????a三、NFA的确定化有关状态集合I的运算实例计算下列各式的值1)move({1,2},a)2)?-closure({5,3,4})运算结果:1)={5,3,4};2)=

文档评论(0)

xiaoyao2022 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档