编译原理
文章平均质量分 75
编译原理笔记以及部分代码
壹玖二一
少年负壮气,奋烈自有时。
展开
-
C++:编译原理实验之词法分析器
一、实验目的学会针对DFA转换图实现相应的高级语言源程序。 深刻领会状态转换图的含义,逐步理解有限自动机。 掌握手工生成词法分析器的方法,了解词法分析器的内部工作原理。 加强对C语言的掌握二、实验内容C计算机语言的编译程序的词法分析部分实现。从左到右扫描每行该语言源程序的符号,拼成单词,换成统一的内部表示(token)送给语法分析程序。为了简化程序的编写,有具体的要求如下:空白符仅仅是空格、回车符、制表符。 代码是自由格式。 注释应放在花括号之内,并且不允许嵌套C语言的单词原创 2021-12-01 12:33:34 · 3073 阅读 · 0 评论 -
C++:编译实验之LR分析器
实验目的(1)掌握有限自动机这一数学模型的结构和理论,并深刻理解下推自动机在LR分析法中的应用(即LR分析器)。(2)掌握LR分析法的思想,学会特定分析表的构造方法,利用给出的分析表进行LR分析。实验内容根据课堂讲授的形式化算法,编制程序实现对以下语法进行自底向上语法分析的LR分析器,设计分析表,对给出的输入语句进行语法分析,判断是否符合相应的文法要求。programmainblockblock {stmts }stmtsstmt stmts |...原创 2021-12-01 17:35:28 · 2956 阅读 · 1 评论 -
C++:编译实验之递归下降分析器
一、实验目的1.加深对递归下降分析法一种自顶向下的语法分析方法的理解。2.根据文法的产生式规则消除左递归,提取公共左因子构造出相应的递归下降分析器。二、实验内容根据课堂讲授的形式化算法,编制程序实现递归下降分析器,能对常见的语句进行分析。三、实验要求首先对上下文无关文法进行检查,消除左递归和左公共因子,从逻辑上检测避免死循环和低效率处理。 采用每个产生式的左边的文法符号对应一个函数或过程的形式,编写程序实现一个递归下降分析器。注意这里的语法分析,是在词法分析的基础上进行的。要求实原创 2021-12-02 09:32:24 · 2306 阅读 · 0 评论