编译原理
文章平均质量分 65
magic_now
这个作者很懒,什么都没留下…
展开
-
DFA确定化和最小化
从正规式开始一、先将正规式转换成NFA通过下面的对应法则将正规式转换成NFA例如:二、再将NFA转成DFA(子集法)运用子集法的3个概念:(1 )状态集的ε-闭包: 状态集I中的任何状态s经任意条ε弧而能到达的所有状态的集合,定义为状态集I的ε -闭包,表示为ε−closure()ε -closure()ε−closure()。(2)状态集的a弧转换: 状态集I中的任何状态s经过一条a弧而能到达的所有状态的集合,定义为状态集1的a弧转换,表示为move(l,a)。(3)状态集的a弧转换的转载 2021-03-23 15:59:36 · 11690 阅读 · 1 评论 -
FIRST集、FOLLOW集和SELECT集
*一:什么是终结符和非终结符。*终结符:通俗的说就是不能单独出现在推导式左边的符号,也就是说终结符不能再进行推导。非终结符:不是终结符的都是非终结符。如:S——>B,则S是非终结符。(一般书上终结符用小写,非终结符用大写。)二:文法产生语言句子的基本思想:从识别符号(开始符)开始,把当前产生的符号串中的非终结符替换为相应规则右部的符号串,直到全部由终结符组成。三:什么是FIRST集FIRST集的定义: 如果α是任意的文法符号串,则我们定义FIRST(α)是从α推导出的串的开始符号的终结符转载 2021-03-18 16:11:30 · 3288 阅读 · 0 评论 -
编译原理之正则表达式-NFA-DFA-MFA 入门到精通
文章目录入门最简单的NFA三种基本状态图1. r=s|t2. r=st3.r=s*NFA到DFA简化(最小化)DFAIf you have read the above ppt. Congratulations!入门最简单的NFA三种基本状态图1. r=s|t2. r=st3.r=s*其他的各种复杂正规式实际上是这些基本状态图的组合我们只需确认是哪几种基本正规式的搭配即可括号内为s|t,外为星闭包,将s|t看作一个整体转载 2021-03-18 11:09:52 · 1000 阅读 · 1 评论 -
FIRST集和FOLLOW集,FIRSTVT集和LASTVT集的求法
FIRST集和FOLLOW集,FIRSTVT集和LASTVT集的求法学习编译原理时, 这几个集合相信大家并不陌生:FIRST、FOLLOW、FIRSTVT、LASTVT。其中First和Follow是一对,而Firstvt和Lastvt是一对。它们的作用分别是:First和Follow是为了画预测分析表的(在LL(1)分析法处);Firstvt和Lastvt是为了画算符优先关系表的(就是表里面填优先大于小于等于的那个)。并且它们都是 终结符 的集合。这里主要讲它们如何构建的问题:先说Fi转载 2021-03-16 11:36:00 · 1930 阅读 · 0 评论 -
表达式A:=B*(C-D)/DA:=B∗(C−D)/D的逆波兰表达式
表达式A:=B∗(C−D)/DA:=B*(C-D)/DA:=B∗(C−D)/D的逆波兰表达式逆波兰式也就是后缀表达式,因此本题的答案是:ABCD−∗D/:=ABCD-*D/:=ABCD−∗D/:=四元式四元式实际上是一种“三地址语句”的等价表示。它的一般形式为:(op,arg1,arg2,result)(op,arg1,arg2,result)(op,arg1,arg2,result)其中, op为一个二元 (也可是一元或零元)运算符;arg1,arg2分别为它的两个运算 (或操作)对象,原创 2021-03-12 10:12:48 · 1549 阅读 · 0 评论 -
LR(0)、SLR(1)、LR(1)和LALR(1)四类文法的相互关系
LR(0)、SLR(1)、LR(1)和LALR(1)四类文法的相互关系一个LR(0)LR(0)LR(0)文法肯定是SLR(1)SLR(1)SLR(1)文法;一个SLR(1)SLR(1)SLR(1)文法一定是LALR(1)LALR(1)LALR(1)文法;而一个LALR(1)LALR(1)LALR(1)文法一定是LR(1)LR(1)LR(1)文法。反之,不成立。...原创 2021-03-12 09:43:14 · 2592 阅读 · 0 评论 -
FIRST集合的求法
E→TE’E’→+TE’|εT→FT’T’→*FT’|εF→(E)|iFIRSTFIRSTFIRST集合的求法方法步骤如下:1、X∈VTX∈VTX∈VT (终结符号集合)FIRST(X)=XFIRST(X)={X}FIRST(X)=X(即:终结符号的FIRST集仍然是其本身)。2、X∈VNX∈VNX∈VN(非终结符号集合)(1)若X→a…X→a…X→a…, 则 a 加入FIRST(X)FIRST(X)FIRST(X);若有X→εX→εX→ε,则ε加入 FIRST(X)FIRST(X)F翻译 2021-03-11 11:53:54 · 1498 阅读 · 0 评论