- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
编译原理课程总复习 贾棋 jiaqi7166@ 第二章 词法分析器 词法记号的描述与识别 正规式的例子 ? = {a, b} a | b {a, b} (a | b) (a | b ) {aa, ab, ba, bb} aa | ab | ba | bb {aa, ab, ba, bb} a* 由字母a构成的所有串集 (a | b)* 由a和b构成的所有串集 复杂的例子 ( 00 | 11 | ( (01 | 10) (00 | 11) ? (01 | 10) ) ) ? 句子:01001101000010000010111001 正规定义的例子 Pascal语言的标识符集合 letter ? A | B | … | Z | a | b | … | z digit ? 0 | 1 | … | 9 id ? letter(letter|digit)* 正规定义的例子 Pascal无符号数集合,例1946,11.28,63.6E8,1.99E?6 digit ? 0 | 1 | … | 9 digits ? digit digit* optional_fraction ? .digits|? optional_exponent ? (E ( + | ? | ? ) digits ) | ? num?digits optional_fraction optional_exponent 简化表示 num ? digit+ (.digit+)? (E(+|?)? digit+)? 状态转换图 转换图 ? 关系算符的转换图 有 限 自 动 机 有 限 自 动 机 不确定的有限自动机(简称NFA) 一个数学模型,它包括: 状态集合S; 输入符号集合?; 转换函数move : S ? (??{?}) ? P(S); 状态s0是开始状态; F ? S是接受状态集合。 有 限 自 动 机 确定的有限自动机(简称DFA) 一个数学模型,包括: NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换——子集构造法 NFA到DFA的转换 DFA的化简 死状态 左图无须加死状态,右图加入死状态E。 DFA的化简 可区别的状态 A和B是可区别的状态 A和C是不可区别的状态 DFA的化简 方法 1. {A, B, C}, {D} move({A, B, C}, a} = {B} move({A, B, C}, b} = {C, D} 2. {A, C}, {B}, {D} move({A, C}, a} = {B} move({A, C}, b} = {C} DFA的化简 方法 1. {A, B, C}, {D} move({A, B, C}, a} = {B} move({A, B, C}, b} = {C, D} 2. {A, C}, {B}, {D} move({A, C}, a} = {B} move({A, C}, b} = {C} 将下图的DFA极小化。 最初的划分是{0, 1, 2, 3}和{4}。 1.状态集合的进一步划分是: {1, 2},{0, 3}和{4} 2.忽略了死状态的影响,会认为它们都不需要再分 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从正规式到有限自动机 从语言到确定的有限自动机 例:识别? ={0,1}上能被5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别? ={0,1}上能被能5整除的二进制数 从语言到确定的有 限 自 动 机 例:识别
文档评论(0)