编译原理中如何判断是终止状态 正规式转nfa的时候为什么状态转换图的初态前有箭头初态不是应该没有前驱吗

编译原理中如何判断是终止状态複习总结 题型:填空、选择、简答题、综合题 第一章 编译器概述 复习要点: 1、编译程序的总框架编译程序工作的大致过程。 2、理解一下概念:编译、解释、翻译、编译前端、后端、遍 计算机执行用高级语言编写的程序主要有两种途径:解释和编译 编译:专指由高级语言转換为低级语言 编译和解释的区别: 是否产生目标程序 编译程序的五个阶段:词法分析、语法分析、语义分析和中间代码生成、优化、目标玳码生成 此外还包括:表格处理和出错处理 第二章 词法分析 复习要点: 1、了解词法分析器的任务 2、掌握状态转换图 3、正规式:与正规集的轉换判断等价 4、有限自动机:NFA确定化、DFA最简化、正规式到DFA的转换 词法分析器(扫描器)的任务:从源程序中识别出一个个具有独立含义嘚最小语法单位。 扫描器的输出格式:二元式序列(单词种别单词符号的属性值) 状态转换图:结点代表状态,用圆圈○表示 状态之間用箭弧→连结,弧上的标记指明在射出弧的结点状态下可能出现的输入字符 初始状态 接受状态 正规式和有限自动机 正规式和正规集的转換 给出正规式要求写出相应的NFA、DFA 给出正规集,要求写出相应的NFA、DFA 1、正规式和正规集 三种运算: “(”读为“或” “( ”读为“连接” “*”讀为“闭包” 转换 正规式等价: 两个正规式所表示的正规集相同,则称两个正规式等价 令Σ是一个有限字母表,则Σ上的正规式及其表示的集合递归定义如下: 1. ε和(都是Σ上正规式,它们表示的正规集为{ε}和( 2. 若a是Σ上的字符,则a是正规式它表示的正规集为{a} 3. 若r和s都是Σ上的正规式,他们表示的正规集记为L(r)和L(s),则 (a) r|s是正规式表示集合L(r)∪L(s), (b) rs是正规式表示集合L(r)L(s), (c) r*是正规式表示集合(L(r))*, (d)(r)是正规式表示的集合仍然是L(r)。(加括弧改变优先级、结合性) 有限自动机 1、确定的有限自动机 M=(SΣ,δ,S0,F) 其中: 1. S —有穷状态集 2. Σ —输入字母表 3. δ —映射函数(也称状态转换函数) 4. S0 —唯一的初始状态集合 (非空)S0∈S 5. F—终止状态集合 F(S DFA是NFA的特例对于每个NFA M存在一个DFA M”,使L(M)=L(M”) NFA的确定化 :子集法 具有(转移的NFA确定化 DFA的化简:分割法 ●一个有穷自动机是化简的 ( 它没有多余状态并且它的状态中没有两个是互相等价的。 ●对于任一个DFA存茬一个唯一的状态最少的等价的DFA 正规式分裂规则: 第三章 语法分析(自上而下) 语法分析器的任务: 按照语言的语法构成规则,识别输入嘚符号串能否构成一个句子 语法分析的理论基础 上下文无关文法和下推自动机 文法:描述语言语法结构的形式规则 乔姆斯基(Chomsky)对文法嘚分类: 0型文法 1型文法 2型文法 3型文法 文法 G = (VT , VN, S, P) 0型文法:( ( (,( , ( ( (VN

我要回帖

更多关于 编译原理中如何判断是终止状态 的文章

 

随机推荐