编译系统
文章平均质量分 64
W.J.Z
这个作者很懒,什么都没留下…
展开
-
多任务请求有限状态有限机c语言实现
确定的有限状态自动机有限自动机作为一种识别装置,能准确的识别正规集。一个确定的有限状态自动机M是一个五元组:M={K,Σ,f,S,Z}M={K,Σ,f,S,Z}M=\left \{ K,\Sigma ,f,S,Z \right \}K是一个有穷集,它的每一个元素成为一个状态。ΣΣ\Sigma是一个有穷字母表,它的每个元素称为一个输入符号,所以也可以称ΣΣ\Sigma为输入符号表。f是...原创 2018-09-12 10:25:49 · 419 阅读 · 0 评论 -
表驱动LL(1)分析程序过程详解
表驱动LL(1)分析程序由预测分析程序、先进后出栈和预测程序表3个部分组成,其中只有预测分析表与文法有关,而分析表又可用一个矩阵M表示。矩阵的元素M[A,a]中的下标A表示非终结符,a为终结符或句子括号#,矩阵元素M[A,a]中的内容是一条关于A的产生式,表明当用非终结字符A向下推导时,面令输入符a时所采取的候选产生式。当元素内容无产生式时,则表明A为左部向下推导时遇到了不该出现的符号,因此元...原创 2018-09-23 16:31:52 · 6809 阅读 · 2 评论 -
简单优先分析和算符优先分析的联系与比较
概述简单优先分析的基本思想是对一个文法按照一定的原则求出该文法所有符号之间的优先关系,按照这种关系确定规约过程中的句柄。算符优先分析的基本思想是只规定算符之间的优先关系,在规约过程中只要找到可规约串就规约。 简单优先分析1 :优先关系定义 (1):若X优先级等于Y, 当且仅当G中含有产生式规则A->.... XY..... 。(2):若X优先级小于Y,当且仅当G中含有产...原创 2018-09-26 21:15:27 · 5403 阅读 · 1 评论 -
通俗易懂LL(1)判别方法
LL(1)文法简介 LL(1)的含义为:第一个L表明自顶向下分析时从左向右扫描输入串,第二个L表明分析过程将最左推导,1表明只需向右看一个符号便可决定如何推导,即选择那个产生式进行推导。讲得什么:说的是编译器从你写的代码中的每行的左边开始读取字符,到右边结束进行下一行读取;分析也是从每行代码的左边字符开始,到右边结束进行下一行;1表示一种状态接受输入时能唯一的确定下面的状态。LL(1)文...原创 2018-09-21 15:08:36 · 27054 阅读 · 9 评论 -
LR(0)项目集规范族和分析表的构造
s原创 2018-10-10 13:46:45 · 12485 阅读 · 1 评论 -
编译器构造:词法分析器代码详细讲解
词法分析的功能词法分析是编译器处理流程中的第一步,它顺序扫描文件内的字符,通过硬编码方式解析器进行匹配,产生各式各样的词法记号。扫描器扫描器读取源文件年,按序返回文件内的字符,直到文件结束。为了节省IO开销,解释用缓冲区结构。#define BUFFEN 100 //缓冲区大小int len_data = 0; //缓冲区数据长度int readIndex = -...原创 2018-11-23 16:19:21 · 3002 阅读 · 0 评论