ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:59.63KB ,
资源ID:15335420      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15335420.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(表达式求值程序设计说明书Word格式文档下载.docx)为本站会员(b****1)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

表达式求值程序设计说明书Word格式文档下载.docx

1、充分地分析和理解问题本身,弄清要求做什么。在确定解决方案框架过程中,综合考虑系统功能,考虑怎样使系统结构清晰、合理、简单和易于调试。最后确定每个过程和函数的简单功能,以及过程(或函数)之间的调用关系,并画出函数之间的调用关系图。3、详细设计和编码:定义相应的存储结构,确定各个函数的算法,并画出流程图,在此基础上进行代码设计,每个明确的功能模块程序一般不超过200行,否则要进一步划分。4、完成课程设计报告 需求和规格说明:设计题目和问题描述:题目要解决的问题是什么; 设计思路:主要算法思想,程序功能图,函数之间的调用关系图; 设计表示:每个函数或过程的功能,列出每个过程或函数所调用的过程或函数,

2、并画出各函数的流程图; 详细设计:主要算法的伪代码; 调试报告:调试过程中遇到的主要问题,是如何解决的;对设计和编码的回顾讨论和分析;改进设想;经验和体会等; 程序实现注释; 附录:源程序清单和结果。如果题目规定了测试数据,则结果要求包含这些测试数据和运行输出,当然还可以含其他测试数据和运行输出。四 提交的成果1. 设计说明书一份,内容包括:1) 中文摘要100字;关键词3-5个;2) 前言;3) 系统分析(包含需要的系统流程图);4) 系统总体设计(包含总体软件结构图、总体数据结构);5) 详细设计;6) 系统测试(包含测试方案、测试用例、测试结果及软件可靠性分析);7) 软件使用说明书(核

3、心界面说明);8) 设计总结、参考文献、致谢等。2. 刻制光盘一张。五 主要参考文献1 王爽.汇编语言(第二版).清华大学出版社, 2008。2 沈美明,温冬婵.IBM-PC汇编语言程序设计(第二版).清华大学出版社, 2001。3 美Kip R.Irvine著,温玉洁,等译.Intel汇编语言程序设计(第五版).电子工业出版社, 2007。4 钱晓捷.汇编语言程序设计(第二版). 电子工业出版社, 2003。5 罗云彬.Windows环境下32位汇编语言程序设计(第二版).电子工业出版社, 2006。6 Windows API函数参考手册.人民邮电出版社, 2002。六 各阶段时间安排(共1

4、周):日期内容地点星期一教师讲解设计要求,准备参考资料机房星期二分析系统,方案设计星期三方案设计,编程星期四编程星期五编程,答辩摘要随着时代的进步,人们不再使用古代的计算器。取而代之的是现今利用计算机编程技术的产品计算器,这节省了人们大量的计算时间。通过电流在晶体管等上面的存储信息,将人们想要计算的数字,通过重复的加减乘除运算从而计算实现出来。本程序是利用汇编语言的编译环境masmplus来实现的。程序通过将读入的中缀表达式转换为后缀表达式,然后读取后缀表达式,输出结果。关键字:汇编语言;Masmplus;中缀表达式;后缀表达式1 概述 1.1课程了解表达式计算是实现程序设计语言的基本问题之一

5、。设计一个程序,演示通过将数学表达式字符串转化为后缀表达式,并通过后缀表达式结合栈的应用实现对算术表达式进行四则混合运算。在计算机中,算术表达式由常量、变量、运算符和括号组成。由于不同的运算符具有不同的优先级,又要考虑括号,因此,算术表达式的求值不可能严格地从左到右进行。在读入表达式的字符序列的同时完成运算符和运算数的识别处理,然后进行运算数的数值转换在进行四则运算。在运算之后输出正确运算结果。1.2 课程设计目的 1要求学生达到熟练掌握汇编语言的基本知识和技能。 2了解并掌握汇编语言的设计方法,具备初步的独立分析和设计能力。 3提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正

6、确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 4培养算法分析能力。分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平。5初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能。1.3 课程设计内容 程序功能:对实数内的加减乘除乘方运算能正确的运算出结果,并能正确对错误输入和无定义的运算报错,能连续测试多组数据。设计一个表达式求值的程序。该程序必须可以接受包含(,),+,-,*,/,%,和(求幂运算符,ab=ab)的中缀表达式,并求出结果。如果表达式正确,则输出表达式的结果;如果表达式非法,则输出错误信息。算法运行:将输入的中缀表达式改为后缀表

7、达式,并进行运算。算法输出:输出后缀表达式和表达式运算结果。1.4系统功能模块的划分“表达式求值”包括四个模块:保存输入的操作数和运算符;比较各个元素的优先级高低;对算术表达式进行四则运算;输出所得的结果。2 系统需求分析 2.1 系统目标 设计一个程序,演示用算符优先法对算术表达式求值的过程。利用算符优先关系,实现对算术四则混合运算表达式的求值。其中涉及到对输入数据和运算符号的保存,比较各个元素之间优先级高低,算法完成清零和按回车换行按等号出结果等问题。2.2 主体功能 能够处理以字符序列的形式输入的不含变量的实数表达式,正确处理负数与小数,判断表达式是否语法正确(包含分母不能为零的情况),

8、正确实现对算术四则混合运算表达式的求值,能够将计算中遇到的问题和结果以文件的形式予以存储。 2.3 开发环境 Masmplus2.4系统功能模块的分析保存输入的操作数和运算符:只要功能就是把输入的操作数字和运算符号保存在程序中,再经过子程序的调用,从而来完成算法的计算;比较各个元素的优先级高低:在输入操作数和运算符号以后,应该先比较元素运算符号的优先级高低从而来决定算法的先后;对算术表达式进行四则运算:这是计算模块的功能,对已经保存好的操作数和运算符号根据优先级的高低来进行运算;输出结果:将最后运算所得的结果输出。3系统分析3.1系统总体分析保存输入的数据保存输入的运算符计算表达式是否合法输出

9、错误提示输出表达是值结束图3.1系统总体分析流程图图3.1讲述在算法的开始,先保存输入到程序的操作数和运算符并且比较各个运算符之间的优先级先后,然后才能进行计算。最后,若是输入的表达式错误则会输出错误指令,若是正确将会输出此表达式的计算结果。3.2优先级的判断 取得元素优先级低 取得元素优先级高图3.2判断优先级模块流程图图3.2是子程序判断元素优先级的流程图。若是取得的元素优先级低则返回“”。3.3表达式的四则运算 符号为* 符号为+ 符号为/ 符号为- 图3.3 四则运算模块流程图图3.3是子程序运算模板流程图。先输入操作数和运算符,最后得到结果。4系统详细设计 我们在编写整体程序代码的时

10、候应该先行编写各个子程序模块,在确定输入操作数和运算符的存储和确定优先级的高低才能进行一个算法表达式的运算。4.1在汇编环境下输入并保存操作数DSEG SEGMENTSTR1 DB 0AH,0DH, please input the expression:(Njump out)$SIGN1 DW 0SIGN2 DW 0SIGN3 DW 0NUMB DW 20H DUP(0)在汇编语言的程序编码坏境下判断数字是否输入完毕,判断括号是否是配对的并且保存已经输入的数值。4.2保存运算符和比较运算符的优先级NUMB DW 20H DUP(0) MARK DB ADB 10H DUP(0) ;ERROR

11、 DB YOUR INPUT ARE WRONG$DSEG ENDSDISP MACRO MLEA DX,MMOV AH,9INT 21HENDMCHOICE MACRO ASC1,HAO1,HH CMP AL,ASC1 ;JNE OTHER&HAO1 ;MOV CH,HH ;JMP OTHER7 ;CSEG SEGMENTSTART:ASSUME CS:CSEG,DS:DSEGCALL CLEARMOV AX,DSEG ;MOV DS,AX ;LEA DI,NUMB ;LEA SI,MARK ;DISP STR1CALL CRdisp errorMOV AX,0MOV DX,0MOV BX,

12、0MOV CX,0STA1 : CALL CRINPUT:MOV AH,01 ;INT 21H ;CMP AL,NJE J_SHU=JE PD CMP AL,28H ;JB INPUT ;CMP AL,39H ;JA INPUT ;CMP AL,2FH JBE JUD INC WORD PTR SIGN1 SUB AL,30H MOV AH,0 ;XCHG AX,DI ;MOV BX,10 ;MUL BX ;ADD DI,AX ;JMP INPUT ;PD:CMP WORD PTR SIGN2,0 JE JUD ;JMP BC ;JUD:CMP WORD PTR SIGN1,0 JNE FUH

13、 ;-JNE FUH1MOV DI,DXFUH:ADD DI,2 ;MOV WORD PTR SIGN1,0;FUH1:CALL ADVANCECMP CH,5 JNE PY INC WORD PTR SIGN2 MOV WORD PTR SIGN3,1;PY:CMP CH,1 JNE AGAIN ;DEC WORD PTR SIGN2在保存输入的数值以后,继续保存输入的运算符并且给运算符赋权值,进而判断各个运算符的优先级。将asc码转换成16进制数并判断数值指针。4.3表达式的四则运算JNE NEXT1SUB DI,2 XCHG BX,DISUB DI,2XCHG AX,DIIMUL BXMOV DI,AXADD DI,2JMP FINISHNEXT1:C

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1