
编译原理
Greepex
复旦大学硕士在读
展开
-
右(左)线性文法
右(左)线性文法马上就编译原理考试了,在我没有被这门课干死之前,我要先把它干死,刚把爹。右线性文法定义形如: A → aB A → a 的文法叫做右线性文法。状态图例:G[Z]: Z→0U∣1V U →1Z∣1 V →0Z∣0 **有图可知: 右线性文法的状态图需要**离线写博客即使用户在没有网络的情况下,也可以通过本编辑器离线写博客...原创 2018-06-23 00:21:38 · 29676 阅读 · 4 评论 -
句柄、最左素短语、可归前缀
句柄、最左素短语、可归前缀1.定义句柄:最左直接短语(一个句型的语法树中任一子树叶结点所组成的符号串都是该句型的短语);最左素短语:处于矩形最左边的素短语(素短语是包含有终结符的短语);可归前缀:规范句型的一个前缀,这种前缀包含句柄且不包含句柄之后的任何符号; 总结一下:目测可归前缀就是句柄(当前要归约的字符串),最左素短语是包含终结符的最左边的子树。2.示例给定...原创 2018-06-23 13:48:02 · 13017 阅读 · 6 评论 -
四元式的翻译(拉链回填)
四元式的翻译(拉链回填)1.定义四元式实际上是一种“三地址语句”的等价表示。它的一般形式为: (op,arg1,arg2,result); 布尔式的四元式序列形式如下:(jnz, A, _ , p): 若A为真转第p个四元式(jez, A, _ , p): 若A为假转第p个四元式(jrop ,A1,A2,p): 若的A1 rop A2关系为真转(j,_ , _ , p): ...原创 2018-06-23 15:09:36 · 19356 阅读 · 0 评论 -
消除左递归和LL(1)文法造表
消除左递归和LL(1)文法造表1.消除左递归1.1定义有A->Aa形式的产生式的文法为直接左递归文法。 类似,若是多步推导得到A->Aa形式的产生式的文法为间接左递归文法。1.2直接左递归消除($表示空串)原产生式: A->Aa|b 消除后: A->bA’ A’->aA’|原产生式:E−>E+T|T消除后:E−>T...原创 2018-06-23 17:46:42 · 3655 阅读 · 0 评论 -
LR分析法
LR分析法1.LR分析法介绍L:left,对输入从左向右扫描; R:right,反向构造一个最右推导序列 LR(k):需要向前查看k个输入符号的LR分析;一般k=0或k=1;2.基本原理移进状态:S->·bBB; 待约状态:S->b·BB,S->bB·B; 归约状态:S->bBB·; 增广文法:如果G是以S为开始符号的文法,则G的增广文法是在G中添...原创 2018-06-24 18:39:04 · 1757 阅读 · 0 评论 -
四元式的翻译以及寄存器分配
四元式的翻译以及寄存器分配1.四元式的翻译1. (Program,Pro_id,,) MAIN SEGMENT: ASSUME CS:MAIN,DS:MAIN,ES:MAIN 2. (sys,_,_,_) 终止程序的运行返回OS 3. (+,A,B,T) MOV AX,A; ADD AX,B; MOV T,AX; 4. (=,B,_,A) ...原创 2018-06-25 17:48:45 · 2896 阅读 · 0 评论 -
FIRST集和FOLLOW集,FIRSTVT集和LASTVT集总结
FIRST集和FOLLOW集,FIRSTVT集和LASTVT集总结转载自:http://dongtq2010.blog.163.com/blog/static/1750224812011520113332714/学编译原理的时候,印象最深的莫过于这四个集合了,而且也十分为之纠结。 首先要知道First和Follow是一对,而Firstvt和Lastvt是一对。 然后要知道这两对都是干什...转载 2018-06-25 20:26:18 · 2733 阅读 · 4 评论