编译原理
易水凌波
守正笃实,久久为工。
展开
-
编译原理 算符优先
编译原理 算符优先思路:首先需要定义数据结构如下:static struct Node2//用于构造算符优先算法{ char Left; char Right; bool isfirstvt; bool islastvt;};一个节点代表一个A->a这样的一个式子,left是非终结符,right为终结符。Isfirstvt为真是代表a是A的firstvt中的一员。Islastvt同理。之后进行文法的扩展,与算符优先处理的初始化。如下:GrammerSet[grammerse原创 2020-11-26 17:16:02 · 867 阅读 · 0 评论 -
编译原理 预测分析法
实验二 预测分析算法的设计与实现一、实验目的通过预测分析算法的设计与实现,加深对自上而下语法分析方法的理解,尤其是对自上而下分析条件的理解。二、实验要求输入文法及待分析的输入串,输出其预测分析过程及结果。三、实验步骤1、确定目标数据结构先看下输入的文法结构E->TKK->+TK|$T->FMM->*FM|$F->i|(E)#$代表空,#代表结束将文法使用具体的数据结构描述出来使用C++好像只有结构体有可操作性了。所以我果断使用结构体。用一个结构原创 2020-11-09 20:12:05 · 4404 阅读 · 5 评论 -
词法分析器
**实验一 源程序的预处理及词法分析程序设计****一、 实验目的设计并实现一个包含预处理功能的词法分析程序,加深对编译中词法分析过程的理解。二、 实验要求1、实现预处理功能源程序中可能包含有对程序执行无意义的符号,要求将其剔除。首先编制一个源程序的输入过程,从键盘、文件或文本框输入若干行语句,依次存入输入缓冲区(字符型数据);然后编制一个预处理子程序,去掉输入串中的回车符、换行符与制表符等编辑性文字;把多个空白符合并为一个;去掉注释。2、实现词法分析功能输入:所给文法的源程序字符串。原创 2020-10-29 23:50:52 · 1042 阅读 · 0 评论