没有合适的资源?快使用搜索试试~ 我知道了~
首页编译原理课设报告 算符优先 C++
编译原理课设报告 算符优先 C++
需积分: 9 16 下载量 159 浏览量
更新于2023-03-16
评论
收藏 424KB DOCX 举报
编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++编译原理课设报告 算符优先 C++
资源详情
资源评论
资源推荐
编译原理课程设计报告
--基于算符优先文法分析器的设计与实现
1 / 37
目 录
1 课程设计的目的和要求..................................................................................................................3
1.1 课程设计的目的...................................................................................................................3
1.2 课程设计的要求...................................................................................................................3
2 系统描述..........................................................................................................................................4
2.1 词法分析的描述:..................................................................................................................4
2.2 算符优先文法的描述:.......................................................................................................4
3 概要设计..........................................................................................................................................6
3.1 设计思路...............................................................................................................................6
3.2 系统功能结构.......................................................................................................................7
3.3 技术路线或实现方法...........................................................................................................8
3.4 开发环境.............................................................................................................................10
4 详细设计........................................................................................................................................10
4.1 物理模型设计.....................................................................................................................10
4.3 系统界面设计.....................................................................................................................15
5 测试方法和测试结果....................................................................................................................15
5.1 测试用例.............................................................................................................................15
6 个人总结和展望............................................................................................................................16
实验中,小组成员的分工与合作充分体现了软件工程的思想。需求分析理解准确,小组成
员任务明确,统一函数头、参数,各自完成分内工作,整合工作快速、高效。同时,实验
中还存在很多不足。调试程序中的错误占用了大部分时间,以至于没有考虑使用界面展示
结果。虽然使用 C++开发工具,但实质上还是在使用 C 编代码。在今后的实践中还需注意。
...........................................................................................................................................................18
7 参考文献.......................................................................................................................................19
...........................................................................................................................................................19
8 源代码............................................................................................................................................19
2 / 37
课程设计的目的和要求
课程设计的目的
本次设计的时间为 5 天,目的是通过使用高级语言设计与实现算符优先文
法分析器,加强对编译技术和理论的理解。设计的题目要求具有一定的规模,
应涵盖本课程内容和实际应用相关的主要技术。
课程设计的要求
1、设计扫描程序,将任何一种整数运算表达式(无变量,操作数为正整数,
允许加减乘除四种运算,允许使用括号和多层括号)识别为单词,并能发现单
词的拼写错误。
2、设计自底向上分析程序,在栈上实现对单词 串的自底向上分析。
3、根据算符优先文法的分析步骤,展示(最好可视化的展示)分析栈 、
串的状态变化、相关量的优先级比较算符优先分析表、判断当前是否
进行规约或移进操作、(若须规约)显示当前应规约的串。
4、展示(最好可视化的展示)语法树。
3 / 37
5、根据教材 ,给出语义子程序序列。
系统描述
本次实验使用 windows vista 操作系统下 visual C++6.0 平台,使用 C++语言,
利用读文件方式将待分析的文法读入到程序中,进行词法分析;通过定义数组
作为具有一定意义或关系的表或栈,存放 firstvt、lastvt、算符优先关系表的元
素。
系统能够对由文件读入的文法进行分析,构造出 firstvt 表和 lastvt 表以及算
符优先关系表。可以根据构造的优先关系表对输入的任意符号串进行分析,判
断是否为本文法的句子,若是则打印规约过程。结果显示到 DOS 界面上。
词法分析的描述
算法的基本任务是从字符串表示的源程序中识别出其具有独立意义的单词
符号其基本思想是根据扫描到的单词符号的第一个字符的种类拼出相应的单
词符号。
算符优先文法的描述:
算符优先文法分析的模块结构图:
4 / 37
算符优先文法是一种自下而上的分析方法,其文法的特点是文法的产生式
中不含两个相邻的非终结符。自上而下的分析方法,通常要求文法的产生式不
含左递归,如 文法就是一种可以自上而下分析的文法。
假定 是不含 产生式的算符文法。对于任何一对终结符 、,我们说:
() 等于 当且仅当文法 中含有形如 或 的产
生式;
() 小于 当且仅当 中含有形如 的产生式,而
或 ;
() 大于 当且仅当 中含有形如 的产生式,而
或 ;
与 无关系,当且仅当 与 在 的任何句型中都不相邻
如果一个算符文法 中的任何终结符对()满足下述条件之一, 则称
是一个算符优先文法。
构造算符优先矩阵的步骤:
用 FIRSTVT (T)表示从非终结符 T 推出的最左终结符的集合,用 LASTVT
(T)表示从 T 推出的最右终结符集。其中:
5 / 37
剩余36页未读,继续阅读
jessica_zhang_xin
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 27页智慧街道信息化建设综合解决方案.pptx
- 计算机二级Ms-Office选择题汇总.doc
- 单链表的插入和删除实验报告 (2).docx
- 单链表的插入和删除实验报告.pdf
- 物联网智能终端项目设备管理方案.pdf
- 如何打造品牌的模式.doc
- 样式控制与页面布局.pdf
- 武汉理工Java实验报告(二).docx
- 2021线上新品消费趋势报告.pdf
- 第3章 Matlab中的矩阵及其运算.docx
- 基于Web的人力资源管理系统的必要性和可行性.doc
- 基于一阶倒立摆的matlab仿真实验.doc
- 速运公司物流管理模式研究教材
- 大数据与管理.pptx
- 单片机课程设计之步进电机.doc
- 大数据与数据挖掘.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0