编译原理课程设计--一个简单文法的编译器前端的设计与实现
-
资源ID:1449649
资源大小:1.96MB
全文页数:25页
- 资源格式: DOC
下载积分:100金币
快捷下载

账号登录下载
三方登录下载:
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
|
编译原理课程设计--一个简单文法的编译器前端的设计与实现
1、 课课 程程 设设 计计 报报 告告 设计题目:一个简单文法的编译器前端的设计与实现 在此处键入 2 摘摘 要要 编译原理课程设计是通过 C 语言编译器相关子系统的设计,进一步加深对编译器构造的 理解;第一部分词法分析,设计各单词的状态转换图,并为不同的单词设计种别码,制作扫描 器识别一个个单词,返回值为识别码的序号,返回Token序列。将词法分析器设计成供语法分 析器调用的子程序。词法分析器具备预处理功能。将不翻译的注释等符号先滤掉,只保留要翻 译的符号串,即要求设计一个供词法分析调用的预处理子程序;第二部分,语法分析,用递归 下降法,实现对表达式、各种说明语句、控制语句进行语法分析。若语法
2、正确,则用语法制导 翻译法进行语义翻译;生成并打印出语法树;若语法错误,要求指出出错性质和出错位置(行 号) 。 我们还做了附加功能,即编译后端,有中间代码优化,生成目标代码汇编语言。通过此次 课程设计,提高了我们的独立分析问题、解决问题的能力,以及系统软件设计的能力; 提高 程序设计能力、程序调试能力,团结协作能力 关键词关键词:词法分析,语法分析,四元式生成,错误处理,符号表生成,语义动作插入, 中间代码优化,生成目标代码 在此处键入 3 目录目录 摘要摘要 1.1. 概述概述 2.2. 课程设计任务及要求课程设计任务及要求 2.1 设计任务 2.2 设计要求 3. 算法及数据结构算法及数
3、据结构 3.1 算法的总体思想(流程) 3.2 词法分析模块 3.2.1 功能 3.2.2 数据结构 3.2.3 算法 3.3 语法分析模块 3.3.1 功能 3.3.2 数据结构 3.3.3 算法 3.4 符号表模块 3.4.1 功能 3.4.2 数据结构 3.4.3 算法 3.5 四元式模块 3.5.1 功能 3.5.2 数据结构 在此处键入 4 3.5.3 算法 3.6 语义动作分析模块 3.6.1 功能 3.6.2 数据结构 3.6.3 算法 3.7 错误处理模块 3.7.1 功能 3.7.2 数据结构 3.7.3 算法 3.8 目标代码模块 3.8.1 功能 3.8.2 数据结构 3
4、.8.3 算法 4. 程序设计与实现程序设计与实现 4.1 程序流程图 4.2 程序说明 4.3 实验结果 5. 结论结论 6. 参考文献。参考文献。 7. 收获、体会和建议。收获、体会和建议。 在此处键入 5 1.1.概述概述 编译器是将C语言翻译为汇编语言代码的计算机程序。编译器将源程序(source language) 编写的程序作为输入,翻译产生目标语言(target language )机器代码的等 价程序。 通常地, 源程序为高级语言 (high-level language ) , C语言程序, 而目标则是 机 器语言的目标代码 (object code) , 也就是可以在计算机硬件中运行的机器代码软件程序。 这一过程可以表示为: 源程序编译器 目标机器代码程序 2.2.课程设计任务及要求课程设计任务及要求 2.12.1设计任务设计任务 学生在学习编译原理课程过程中,结合各章节的构造编译程序的基本理论,要求 用C#语言描述及上机调试,实现一个 C 编译程序(包括词法分析,语法分析等重要子程 序) ,使学生将理论与实际应用结合起来,