您好,欢迎访问三七文档
当前位置:首页 > 幼儿/小学教育 > 小学教育 > 汇编语言课程设计 四则运算
1计算机与信息工程学院《汇编语言》课程设计四则运算器的设计专业:计算机科学与技术班级:控制11-2班姓名:倪天天学号:2011025745指导教师:郝维来2013年6月28日2设计题目:四则运算器的设计设计目的:编写一个程序,每运行一次可执行程序,可以实现加减乘除四则运算。计算器是最简单的计算工具,简单计算器具有加、减、乘、除四项运算功能。通过使用汇编语言设计实现简单计算器,以此进一步了解和掌握对数据存储,寄存器的使用,加减乘除相关指令以及模块的调用等汇编语言知识的有效运用。本次课程设计以实现一个基本功能完善,界面友好,操作简便易行的计算器为最终目的。设计目标:通过对具有加减乘除基本功能的计算器的设计实现,学会使用汇编语言实现输入输出模块的设计,模块合理调用的设计,加减乘除运算的判断以及退出程序的判断的设计。通过对各种指令的合理使用,熟悉并加深对各种指令的用法。学会使用汇编语言设计各个功能模块。当实现各个程序模块后,学会通过程序的调用最终实现一个具有基本计算功能的简单计算器。任务下达时间:2013-6-17任务完成时间:2013-6-28指导教师评语:年月日设计成绩:3摘要计算器是最简单的计算工具,简单计算器具有加、减、乘、除四项运算功能。想要用汇编语言实现简单的计算器,就必须通过对数据存储,寄存器的使用,加减乘除相关指令以及模块的调用等汇编语言知识进行运用,以实现一个基本功能完善,界面友好,操作简便易行的计算器。用汇编语言实现简单计算器还涉及到输入输出模块的设计,加减乘除运算的判断以及退出程序的判断的设计。通过对各种指令的合理使用,设计各个功能模块。当实现各个程序模块后,通过程序的调用最终实现一个简单的计算器。关键词:计算器,汇编语言,四则运算,功能模块4AbstractCalculatoristheeasiestcalculationtools,asimplecalculatorwithaddition,subtraction,multiplication,divisionfourarithmeticfunctions.Wanttouseassemblylanguagetoachieveasimplecalculator,youmustpassonthedatastorage,registerusage,addition,subtraction,andrelatedinstructionssuchasassemblylanguagemodulecallstheuseofknowledgeinordertoachieveabasicfunctional,user-friendly,easytooperateeasycalculator.Usingassemblylanguagetoachieveasimplecalculatoralsoinvolvesthedesignofinputandoutputmodules,thejudgmentofarithmeticoperationsandexittheprogramtojudgedesign.Throughtherationaluseofvariouscommands,designvariousfunctionalmodules.Whenimplementingvariousprogrammodules,throughacalltotheultimaterealizationoftheprogramasimplecalculator.Keyword:Calculator,assemblylanguage,fourarithmetic,functionalmodules5目录1.背景分析及意义............................................................................................................................62.总体设计思想................................................................................................................................63.完成的主要功能............................................................................................................................74.软硬件环境要求............................................................................................................................75.程序流程图....................................................................................................................................76.使用说明........................................................................................................................................9设计总结...........................................................................................................................................9参考文献.........................................................................................................................................10程序清单.........................................................................................................................................1061.背景分析及意义汇编语言是计算机能够提供给用户使用的最快而又最有效的语言。同时,汇编语言也是能够利用计算机所有硬件特性并能直接控制硬件的唯一语言。因而,对程序的空间和时间要求很高的场合,汇编语言的应用是必不可少的。至于很多需要直接控制硬件的应用场合,则更是非用汇编语言不可。由于汇编语言如此地接近计算机硬件,因此,它可以最大限度地发挥计算机硬件的性能。用汇编语言编写的程序速度通常要比高级语言快几倍、几十倍、甚至成百上千倍,解释语言其程序速度更无法与汇编语言程序同日而语。2.总体设计思想本次汇编语言课程设计的最终目的是要实现一个简单计算器,要求编写一个程序,每运行一次可执行程序,可以实现数的加减乘除四则运算。比如,十进制数的加减乘除四则运算。我们曾经学习过两个具体数字进行加减法运算,但是对于简单计算器用汇编语言实现难点在于这两个要做运算的数是未知的,是由自己调用中断输入到屏幕上并要用程序存储起来的数,然后才能对这两个数进行运算,而且做的是加法运算、减法运算乘法运算还是除法运算也未可知,为此我们还要判断用户所输入的运算是四则运算中的哪一个运算。此外,运算过程中的进位或是借位,选择用什么样的方式进行输出,如何实现清屏等也是要解决的问题。第一步,我要解决的是输入时是用INT21H的10号功能调用还是用INT21H的1号功能调用来进行输入。若是用10号功能调用则我们进行多字符输入,可以将输入的字符都存储到一个数据区里面,并调用9号功能调用输出存进去的字符,这种输入和输出的方案是可行的。我选择的是利用1号功能调用来输入,即把单个字符一个个的输入并存储到一个数据区里。我们要做的是两个数的运算,先认定输入的格式为1234+5678=或者1111*2222=,当然如果输入不是这样的格式计算出来的结果就不一定是我们想要的结果了。在存储的时候也是有选择的存储,当输入的并非格式里所要求的字符时则报错。第二步,设计程序进行判断所输入的算式是做加法运算、减法运算、乘法运算还是除法运算,即判断输入的运算符是‘+’号、‘-’号、‘*’号、‘/’号中的哪一个,因为输入的格式固定了,所以只需要把存进数据区的第三个字符拿来与加减乘除四个运算符号进行比较,和哪一个运算符号一样就调用相对应的运算模块进行计算。7第三步,根据计算器程序所要实现的功能完成各个功能模块。设计程序主体部分,根据主体部分所需的功能模块对各个子模块一一进行设计编写。子模块中包含有:do_add加法运算模块,do_sub减法运算模块,do_mul乘法运算模块,do_div除法运算模块,input输入模块等。最后还要对这个简易计算器进行功能完善。为了使程序符合我们使用者的操作习惯,设计当用户根据提示信息输入一个算式后,按下enter键或是‘=’符号键时,程序依据输入的算式进行计算,并将结果显示在屏幕上。如果用户输入错误,则返回,提示信息让用户重新输入算式,当用户按下Q或q键时退出程序。在各个子功能模块设计好的情况下,通过主题模块的合理调用,最终实现一个具有简单运算功能的计算器。3.完成的主要功能本次课程设计的题目是用汇编语言实现一个简单的计算器,运行程序,程序界面能显示出参与运算的运算式和运算结果,可以输入加减乘除四则运算,输入后按等于号或回车键输出运算结果。本次课程设计以实现一个基本功能完善,界面友好,操作简便易行的计算器为最终目的。4.软硬件环境要求X86架构PC机,安装windows操作系统,系统运行MASM5.0或以上版本软件。5.程序流程图此程序流程图简要地表现出了所要实现的功能以及一些功能的大概算法,同时也是我编写的程序的一个总体的框架。程序流程图说明:通过流程图,可以看出程序开始运行时,首先输出提示语句,当用户输入后,程序根据所输入的内容进行判断,通过判断的结果来决定调用哪个功能模块,首先要判断输入的字符是否为Q或q,若是,则退出程序,不是则继续输入。还要判断输入的是否为0--9,‘+’,‘-’,‘*’,‘/’这些字符,若不是会报错,是则将根据运算符号调用相应的功能模块完成运算。最后将运算8的结果显示在屏幕上,并返回主题程序,使用户可以重新输入。程序流程图如图1所示:输入一个算式‘0~9'‘+’‘-’‘*’‘/’?存储数据判断运算符号调用运算功能模块输入出错NYN输出提示语句Y按下Enter或=键显示结果是否为c?Y开始结束9图16.使用说明运行程序,按提示输入你所需要的运算式,按“=”或“Enter”显示输出结果,按“C”继续运行计算器,按“E”退出。设计总结经过这次课程设计,我学到了很多东西,其中包括知识方面的,还有其他方面的。首先让我认识到,做好一件事,做成功一件事是不容易的,但是你只要坚持不懈的努力,不断的发挥自己的智慧去思索去探究,你会欣慰的发现自己正向着成功一步步迈进。这次课程设计使我对汇编语言程序设计这门课程有了进一步的理解和认识,使我学到了许多编程语言以及算法设计方面的知识,同时也锻炼了我的耐心和意志,增长了我的实践能力。这次课程设计我所选的题目是使用汇编语言设计一个具有加减乘除基本运算功能的简单计算器,要求编写一个程序,每运行一次可执行程序,可以实现加减乘除四则运算。通过使用汇编语言设计实现简单计算器,我进一步了解和掌握了对数据存储,寄存器的使用,加减乘除相关指令以及模块的调
本文标题:汇编语言课程设计 四则运算
链接地址:https://www.777doc.com/doc-4094474 .html