编译原理课程设计-简单计算器实现

编译原理课程设计-简单计算器实现

ID:31483597

大小:504.00 KB

页数:14页

时间:2019-01-11

编译原理课程设计-简单计算器实现_第1页
编译原理课程设计-简单计算器实现_第2页
编译原理课程设计-简单计算器实现_第3页
编译原理课程设计-简单计算器实现_第4页
编译原理课程设计-简单计算器实现_第5页
资源描述:

《编译原理课程设计-简单计算器实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、WORD完美整理版课程设计报告课程:编译原理学号:姓名:班级:11级嵌入式应用技术班教师:时间:2014年6月计算机科学与技术系范文范例参考指导WORD完美整理版设计名称:简单计算器的实现设计内容、目的与要求:设计内容:计算器的功能要求如下:可以支持加(+)、减(-)、乘(*)、除(/)运算,如3+4-5*2/2;支持括号运算,如(4+5)*5/8。用户输入表达式后,转化为逆波兰式并执行计算,最后输出该表达式的结果。设计目的:1、对单词的构词规则有明确的定义; 2、编写的分析程序能够正确识别源程序中的语法符号;3、计算器源程序的以.c格式输出; 4、对于源程序中的语

2、法错误,能够做出简单的错误处理,给出简单的错误提示,保证顺利完成整个源程序的分析; 5、计算器能够实现加,减,乘,除,混合运算,多项式运算设计要求:1、将非后缀式用来表示的算术表达式转换为用逆波兰式来表示的算术表达式,并计算用逆波兰式来表示的算术表达式的值。 2、掌握利用算符优先分析法完成中缀表达式到逆波兰式的转化。计划与进度安排:5月20日—5月21日:确定本次课程设计研究课题:实现简单计算器。5月22日—5月30日:进行需求分析,分析该计算器具有哪些功能,并明确该课题的一些要求。5月31日—6月3日:查找相关资料和书籍,了解本课题涉及有关知识,如:编译原理的一些

3、基本概念,逆波兰式的基本概念,以及逆波兰式的转化问题等。6月4日—6月8日:概要设计,将程序的几大模块分开来设计,画出程序的流程图6月8日—6月10日:详细设计,写出代码并进行调试6月10日—6月12日:运行程序,如果能够实现本次课程设计则进行优化,如果不能满足要求则继续改进。6月13日—6月15日:对本次课程设计进行分析总结。范文范例参考指导WORD完美整理版设计过程、步骤(可加页):一、需求分析1.1总述在日常的学习与工作过程中,经常遇到计算表达式数值的问题,诸如34-(8+5*10)。如果人为地分步计算,难免因疏漏了括号或字符而导致结果出错。表达式计算器具有计

4、算表达式结果的功能,大大方便了学习与工作。本次开发的表达式计算器能帮我们对数据进行有效的运算,如通过四则运算能实现对输入数据的加减乘除。本课程设计结合了编译原理中的利用算符优先分析法完成中缀表达式到逆波兰式的转化,并计算输入表达式的结果。1.2编写表达式计算器的意义我们每个人都使用过计算器,专用的计算器都是一个现成的器件,是由运算芯片完成运算功能的。而且只能进行单纯的加、减、乘、除运算,不能进行表达式运算。那么如何用计算机来实现一个基于表达式的计算器呢?用计算机来实现一个基于表达式的计算器,也就是用编写程序(即软件)的方法来实现。所谓的编译程序是指这样的一种程序,它

5、能够把某一种语言程序(称为源语言程序)转换成另一种语言程序(称为目标语言程序),而后者与前者在逻辑上是等价的。四则混合计算器的输入是一个由字符组成的表达式(源程序),如果这个表达式是合法的,则输出是这个表达式的计算结果(目标代码);否则输出错误信息。因此四则混合计算器是一个典型的编译程序。编译原理是计算机软件专业的一门重要的专业必修课。尽管编译过程与外文书刊的翻译工作过程比较类似,但由于编译程序所翻译的毕竟不是自然语言,必然有其自身特性,因而学生普遍认为这门课程是专业课中比较难于学习的。即使学习了编译原理这门课,大多数学生也不可能就开发出一个编译程序。事实上,许多从

6、事计算机专业的人士也未能编写出一个完整的编译系统。而编制四则混合运算的计算器,就等价于编写一个小的编译系统,而且又具有可实现性,因此,把这个题目作为编译原理学习的一个测验题目是非常适合的。现有的编译程序通常有两大类:一类是翻译,另一类是解释。所谓翻译,是指在计算机中放置一个能为计算机直接执行的翻译程序,它以某一种程序设计语言(源语言)所编写的程序(源程序)作为翻译或加工的对象,当计算机执行翻译程序时,就将它翻译为与之等价的另一种语言目标语言的程序(目标程序)。如C编译程序就是一种翻译程序,它的源语言和目标语言分别是相应的C语言和机器语言。解释程序也是以源程序作为它的

7、输入,它与编译的主要区别是在解释程序的执行过程中不产生目标程序,而是边解释边执行源程序本身。1.3功能要求要求:实现具有加、减、乘、除、括号等运算的简单计算器,输入表达式,转换为逆波兰式,输出该表达式的值。范文范例参考指导WORD完美整理版二、概要设计2.1开发环境操作系统:Windows7开发平台:VC++6.0开发语言:C2.2总体设计程序在VC++6.0中使用面向对象的技术实现了计算器。程序主要结构如下:1.定义部分:定义常量、变量、数据结构。  2.初始化:设立算符优先分析表、初始化变量空间(包括堆栈、结构体、数组、临时变量等);  3.控制部分:从键盘

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。