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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

微机原理课设加法练习程序.docx

1、微机原理课设加法练习程序课 程 设 计课程设计名称: 微机应用系统课程设计 专 业 班 级 : 计科1204班 学 生 姓 名 : 张婷婷 学 号 : 201216010433 指 导 教 师 : 王 锋 课程设计时间: 2014.12.22-2015.1.3 计算机科学与技术 专业课程设计任务书学生姓名张婷婷专业班级计科1204班学号201216010433题 目加法练习程序设计课题性质A.工程设计课题来源自拟课题指导教师王 锋同组姓名无主要内容随机给出百位数以内的加法算式,并提示输入答案,若正确给出正确提示,若错误给出错误提示,并提示输入答案;按 R 键继续下一题,按 Q 键返回 DOS.

2、任务要求一切以设计内容为前提进行课程设计实验:1.设计一个菜单,选项为加法和减法的练习。2.以获取系统中的秒和百分秒作为两个随机数进行加减运算。3.将输入的答案和运行结果比较,若相等给出正确提示,若错误给出错误提示,并继续输入答案直到正确为止。4.提示是否继续下一题,按R键继续下一题,按Q键返回 DOS。参考文献1.16/32位微机原理、汇编语言及接口技术(第2版)-(北京电子工业出版社 2003)钱晓捷,陈涛 编著2.32位微型计算机原理与接口技术-(北京清华大学出版社 2000)仇玉章等 编著审查意见指导教师签字:教研室主任签字: 2015年 1 月 10日 一课程设计实验的目的 课程设计

3、的目的在于更好的锻炼我们的实践能力和考验平时学习的成果。我们是计算机专业,离不开编写代码。平时上课所学的知识来自于课本,上机实验相对比较少,所能锻炼的操作能力机会不多。而课程设计是让我们综合平时课本和实验的知识及经验,自己设计和构造,编写一个相对完整的程序。这不仅仅是对以前知识的巩固,更是锻炼我们的思维,我们的设计与编写程序的能力。对于我们以后将会从事的计算机类工作,这能很好的为我们打下坚实的基础,所谓积少成多,每学期都做课程设计,到毕业时我们对于编写一个应用软件或许就能较容易驾驭了。本次微机应用系统课程设计我的题目是加法练习程序设计,虽然只要求加法运算,但我在该程序里添加了减法运算,使得程序

4、相对不会太单调。虽然给的编程题目可能会与别人一样,但每个人的想法不一样,在设计时添加自己的想法或许就能使程序更加完善了,这也是课程设计对我们的一种锻炼。二实验设计的任务与要求 加法练习设计程序的内容是:随机给出百位数以内的加法算式,并提示输入答案,若正确给出正确提示,若错误给出错误提示,并提示输入答案;按 R 键继续下一题,按 Q 键返回 DOS。按照内容要求,在所学知识内容的基础上设计程序,具体的内容设计要求任务如下:1.设计一个菜单,选项为加法和减法的练习。2.以获取系统中的秒和百分秒作为两个随机数进行加减运算。3.将输入的答案和运行结果比较,若相等给出正确提示,若错误给出错误提示,并继续

5、输入答案直到正确为止。4.提示是否继续下一题,按R键继续下一题,按Q键返回 DOS。这次课程设计是在完成设计要求的基础上,添加了减法练习运算,以仔细、认真、规范的态度完成自己课程设计。三实验设计的思想加法练习程序设计,主要工作是产生两个两位数的随机数进行加运算,而怎么产生随机数是该程序的难点。在搜集了一些资料后发现很多程序用的随机数是伪随机,是一个比较复杂算法,而不使用算法获得随机数的方法就是获取系统的时间。在翻阅课本后得知mov ah,2ch int 21h语句可以得到系统时间,在考虑后认为秒和百分秒比较适合,因为在短时间内这两个时间变化的多一些,比较适合用于随机数。Dh所存的数对应的是秒,

6、Dl所存的数对应的是百分秒。加法直接将两个随机数相加即可,但减法就相对麻烦些,因为会出现第一个随机数比第二个随机数小得到结果为负数。为了解决这一问题,在数据段定义了两个变量,用来存放减数和被减数。在获取随机数时先不显示运算式,先将随机数的值给变量num1和变量mum2,如果相减结果小于0则转回去继续取随机数,直到取得随机数相减记过大于0,则显示运算式继续后面的程序运行。相对较难的部分解决后则是将整个程序流程串起来,先是显示选择加或减运算,产生的随机数并显示相应的运算式;再是输入结果,对结果进行判断给出对或错的提示,错误时提示继续输入结果,对则继续下一步;最后选择是否继续下一题,R返回最初加减运

7、算选择,Q则退出。四实验环境 4.1运行环境(1)软件环境 操作系统:Windows 7(2)硬件环境 处理器:Inter Core i5 内存:4.00GB 硬盘空间:500GB4.2开发工具与编程语言 (1)开发工具:Masm for Windows集成实验环境 V2012 (2)编程语言:汇编五实验方案 先是设计了一个菜单,用于选择进行加法运算还是减法运算,菜单显示来自数据段的字符串。选择后变转到jiafa或jianfa程序段中,调用产生随机数的random1(秒)和random2(百分秒)程序段中并显示运算式。将输入的答案通过show程序段将其转换成ASCII码显示出来,再由get程序

8、段将输入的答案转换成对应的数,最后转换成数的答案与计算机运算结果比较,如果相减为0则对,提示correct,否则输入的答案是错的,提示error并让其继续输入答案直到正确为止。在答案正确后,提示“Continue(R) or Exit(Q)?”是否继续下一题,按R继续下一题,按Q则返回DOS。六实验流程图 否是是 否七 实验源代码DATAS SEGMENT msg db *,0dh,0ah,$addp db * 1. Addition to practice *: ,0dh,0ah,$subp db * 2. Subtraction to practice *: ,0dh,0ah,$sele

9、db Input your chioce: ,$ corr db 20h,20h,Correct!,0dh,0ah,$ erro db 20h,20h,Error!,0dh,0ah,$ rorq db Continue(R) or Exit(Q)?,0dh,0ah,$ exit db 0dh,0ah, Press any key to quit.,0dh,0ah,$ sum dw 0 num1 dw 0 num2 dw 0DATAS ENDSSTACKS SEGMENTSTACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:STACKSSTAR

10、T: MOV AX,DATAS MOV DS,AXagain: mov dx,offset msgmov ah,09hint 21hmov dx,offset addpmov ah,09hint 21h mov dx,offset subpmov ah,09hint 21h mov dx,offset msgmov ah,09hint 21hselect:call huanmov dx,offset selemov ah,09hint 21hmov ah,1int 21hcmp al,31h jz jiafa cmp al,32hcall huanjz jianfa gono: mov dx,

11、offset rorq mov ah,09h int 21h key: mov ah,1 int 21h cmp al,72h jz select cmp al,71h jnz key call huan mov dx,offset exit mov ah,09h int 21h mov ah,4ch int 21hjiafa:call huan call random1 mov sum,ax call show mov dl,+ mov ah,2 int 21h call random2 add sum,ax call show jmp nextjianfa: call random1 mo

12、v sum,ax mov num1,ax call random2 sbb sum,ax mov num2,ax cmp sum,0 jl jianfa mov ax,num1 call show mov dl,- mov ah,2 int 21h mov ax,num2 call show jmp nextnext: mov dl,=mov ah,2 int 21h call input cmp bp,sum jz done mov dx,offset erro mov ah,09h int 21h jmp nextdone: mov dx,offset corr mov ah,9 int

13、21h jmp gonorandom1: mov ah,2ch int 21h mov al,dh mov ah,0 retrandom2: mov ah,2ch int 21h mov al,dl mov ah,0 retshow: mov ax,ax aam or ax,3030h xchg ah,al mov dx,ax mov ah,2 int 21h mov dl,dh int 21h retinput: mov bp,0 mov cx,3get: mov ah,0 int 16h cmp al,0dh jz ok cmp al,0 jb get cmp al,9 ja get mo

14、v ah,0eh int 10h and ax,0fh xchg bp,ax mov bx,10 mul bx add bp,ax loop getok: cmp cx,3 rethuan: mov dl,0dh mov ah,2 int 21h mov dl,0ahmov ah,2 int 21h ret MOV AH,4CHINT 21HCODES ENDS END START八实验结果图1 菜单图2 加法练习运算图3 减法练习运算图4 运算错误和退出九实验总结 加法练习程序设计可能较于平时的一些实验相对简单些,但这次的课程设计是由自己构思和设计的,遇到麻烦的地方也要靠自己去解决,不像平时实验那样,大家完成的内容都一样能够探讨。所以考验自我学习能力和编程能力,对程序结构流程的设计能力,做出自己满意的程序。通过课程设计,我们将本学期所学的微机原理、汇编语言的知识重新温习和巩固,加深了我们对知识的理解,熟练了汇编语言的运用,提高了我们的编程与设计能力。十参考文献1.16/32位微机原理、汇编语言及接口技术(第2版)-(北京电子工业出版社 2003)钱晓捷,陈涛 编著2.32位微型计算机原理与接口技术-(北京清华大学出版社 2000)仇玉章等 编著

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

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