编译原理第3章第1节词法分析﹒DFA﹒NFA及其转换.ppt

编译原理第3章第1节词法分析﹒DFA﹒NFA及其转换.ppt

  1. 1、本文档共64页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理第3章第1节词法分析﹒DFA﹒NFA及其转换

Step4 寻找可合并状态 ε ε 0 1 2 0 5 0 1 6 1 3 4 7 ε ε 0 8 9 1 1 0 10 11 0 0 1 1 1 0 12 13 0 1 I I0 I1 {0,1,2} 1 ε ε 0 1 2 2 5 0 0 8 {5,8} {5,8} 2 1 6 9 1 {6,9} {6,9} ε 1 2 0 5 8 {1,2} {1,2} 5 3 4 7 ε ε 8 {3,4,7} {3,4,7} 0 6 3 4 7 ε ε 9 {3,4,7} ε 1 2 6 1 9 {1,2} {5,8} {6,9} 0 4 7 10 0 12 {10,12} {10,12} 1 4 7 11 13 1 {11,13} {11,13} 0 4 7 ε 12 {4,7} {4,7} ε 1 2 10 1 {1,2} ε 1 2 11 0 {1,2} ε 1 4 7 13 {4,7} {10,12} {11,13} Step5 合并状态 I I0 I1 {0,1,2} {5,8} {5,8} {6,9} {6,9} {1,2} {1,2} {3,4,7} {3,4,7} {3,4,7} {1,2} {5,8} {6,9} {10,12} {10,12} {11,13} {11,13} {4,7} {4,7} {1,2} {1,2} {4,7} {10,12} {11,13} {0,1,2} 0 {3,4,7} I I0 I1 0 0 {5,8} 1 {5,8} {5,8} 1 1 1 1 1 1 {6,9} 2 {6,9} {6,9} 2 2 2 2 2 2 {1,2} 3 {1,2} {1,2} {1,2} {1,2} 3 3 3 3 3 3 3 3 3 3 {3,4,7} 4 {3,4,7} 4 4 4 4 4 4 {10,12} 5 {10,12} {10,12} 5 5 5 5 5 5 {11,13} 6 {11,13} {11,13} 6 6 6 6 6 6 {4,7} 7 {4,7} {4,7} 7 7 7 7 7 7 例:构造DFA,使其能接受所有由偶数个0和偶数个1所组成串。 I I0 I1 0 1 1 1 2 2 2 3 3 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 Step6 构造DFA 1 2 3 2 3 4 1 3 4 4 5 6 5 6 7 3 5 7 3 6 7 0 1 2 0 1 2 0 1 3 4 0 1 0 1 0 1 5 6 0 1 7 0 1 0 1 0 1 例:构造DFA,使其能接受所有由偶数个0和偶数个1所组成串。 Step7 确定初态和终态:原终态为1 0 1 5 6 0 1 0 1 2 0 1 3 4 0 1 0 1 7 0 1 0 1 0 1 {0,1,2} {5,8} {6,9} {1,2} {3,4,7} {10,12} {11,13} {4,7} {0,1,2} 0 {5,8} 1 {6,9} 2 {1,2} 3 {3,4,7} 4 {10,12} 5 {11,13} 6 {4,7} 7 0 3 例:构造DFA,使其能接受所有由偶数个0和偶数个1所组成串。 0 人,狼,羊,白菜 1 人,狼,羊 2 人,狼,白菜 3 人,羊,白菜 4 人,羊 5 狼,白菜 6 狼 7 羊 8 白菜 9 Φ 用G(x)表示人带x从左岸到右岸,R(x)表示从人带x右岸回到左岸; G和R分别代表人自己去到右岸或回到左岸。 0 1 2 3 4 6 7 8 5 9 G(羊) G(狼) G(羊) G G(狼) G(白菜) G(羊) G(白菜) G G(羊) R R(羊) R(羊) R(白菜) R R(狼) R(白菜) R(狼) R(羊) R(羊) 0 人,狼,羊,白菜 1 人,狼,羊 2 人,狼,白菜 3 人,羊,白菜 4 人,羊 5 狼,白菜 6 狼 7 羊 8 白菜 9 Φ 0 1 2 3 4 6 7 8 5 9 G(羊) G(狼) G(羊) G G(狼) G(白菜) G(羊) G(白菜) G G(羊) R R(羊) R(羊) R(白菜) R R(狼) R(白菜) R(狼) R(羊) R(羊) 0?5?2?8?3?7?4?9步骤: G(羊)?5(狼,白菜) R?2(人,狼,白菜) G(狼)?8(白菜) R(羊)?3(人,羊,白菜) (5)G(狼)?7(羊) (6)R?4(人,羊) (7)G(羊)?9() 问题: 任给一个正规式,如(a|b)*(aa|bb)(a|b)*,如何构造其DFA? 0 a b 1 2 3 4 a a b b 5 a b ε ε (a|b)*(aa|bb)(a|b)* 0 a|b 3 a|b 1 2 aa bb ε ε 0 (a|b)*(aa|bb)(

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档