欢迎来到冰豆网! | 帮助中心 分享价值,成长自我!
冰豆网
全部分类
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • 党团工作>
  • ImageVerifierCode 换一换
    首页 冰豆网 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于汇编语言的程序设计Word格式文档下载.docx

    • 资源ID:16563763       资源大小:125.75KB        全文页数:14页
    • 资源格式: DOCX        下载积分:12金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要12金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于汇编语言的程序设计Word格式文档下载.docx

    1、5、熟悉掌握dos系统调令,初步掌握计算机应用系统设计的步骤,提高分析和解决实际问题的能力.6、掌握现代设计手段和汇编语言应用程序.7、通过设计实践,培养学生查阅专业资料,工具书或参考书,了解有关工业标准,掌握现代设计手段和软件工具,并能以图纸和说明书表达设计思想和结果的能力.1.2设计内容及要求运用汇编语言编写关于闰年判断的汇编程序,根据提示输入任意年份,编写判断闰年的程序,如果是闰年则在屏幕上显示,否则显示不是.需要运用汇编语言,不允许运用c语言,java等语言,并且运用所学过的程序语言和其他技术共同完成闰年判断的程序设计,并且得到运行结果,分析并理解该汇编语言程序的内容,理解程序的相应d

    2、os指令调用的相应指令.第二章、总体设计2.1 设计思想及实施方案闰年的判断是一个非常经典的问题,闰年判断的程序设计是基于汇编语言的基础上对闰年的判断的程序设计.在学习各种语言时都会遇到.解决该问题的关键是找到判断某年是否为闰年的方法.要判断某一年是否为闰年,需判断该年份的数值正整数是否满足以下两个条件中的任意一个:能够被4整除,但不能够被100整除;能够被4整除,同时又能够被400整除.2.2 结构概述主模块:显示提示输入年份以及输入的字符内容,和最后输出的判断.子模块:判断输入:该模块是对输入的年份的格式的判断,若是错误则显示错误并显示输入提示,正确则进行下面的操作.字符串转换格式:将数字

    3、字符串转换成数字,以进行下面的程序操作.判断闰年:判断输入的年份是否为闰年,若是则输出“the year is a leap !”,若不是则输出“the year is not a leap !”,然后可以无限循环查找其他年数.循环输入:查询完可以继续查询想要查询的年份,并且可以无限次的输入.第三章、软件设计3.1流程图及其说明根据以上结构,可画出以下程序流程图 图3-1 判断闰年流程图本框图列出了此次课程设计的总流程,显示信息,输入数据,判断格式,判断闰年和结束程序.较为直观地显示了设计的顺序结构,循环结构及分支结构.3.2源程序清单和注释根据流程图利用DOS 21H中断类型的10号键盘功能

    4、调用,将键盘接受到的年份数值的字符串按字节存入缓冲区.将字符串中的每个字符转换为对应的十进制数值(利用0-9这10个数的ASC码值比其本身大30H的关系),利用判断某年是否为闰年的表达式,输入该年是否为闰年的信息.主要程序代码如下:data segment inbuff db 5,?,5 dup(?) prompt db Please input the year:,$ errmsg db Input illegal! yes db is leap year no db is not leap year mess db Continue?(y/n): newline db 13,10, ;回车

    5、换行data ends code segment main proc far assume cs:code,ds:data start: push ds sub ax,ax push ax mov ax,data mov ds,ax lop0: call input call judge lea dx,mess mov ah,09h int 21h ;是否继续输入年份的判断 mov ah,01h int 21h cmp al,n je exit continue: lea dx,newline jmp lop0 exit:ret main endp ;输入一个具体的年份,并转换成10进制 返回

    6、:(ax)=输入的年份 input proc near push bx push cx push dx s1: lea dx,prompt 提示输出 lea dx,inbuff mov ah,0ah 键盘输入 mov dl,byte ptr inbuff1 ;把有效地址为inbuff的字节送给dl cmp dl,4 ;输入的值判断是否为4位数 jne error ;调用输入不合条件时的错误处理 mov cx,4 lea bx,inbuff add bx,2 mov ax,0 mov dx,0 lop1:检查输入有效性 mov dl,10 mul dl mov dl,byte ptr bx su

    7、b dl,30h ;将字符转化为数值 cmp dl,0 jb error cmp dl,9 ja error add ax,dx inc bx,bx+1 ;循环体中字符在字符串中的位置 loop lop1 jmp s2 error:错误处理 lea dx,errmsg jmp s1 s2: mov cx,ax mov ax,cx pop dx pop cx pop bx ;现场恢复 ret input endp ;判断一个年份是否闰年 输入:(ax)=年份 judge proc near push ax ;保存ax;输出要判断的年份 lop2: mov ah,02h inc bx loop l

    8、op2 ; 循环输出年份正确时结果中的年份 lop3: pop ax mov cx,ax ;保存ax到cx中 mov bx,4 ;判断是否能被4整除 div bx cmp dx,0 jne not leap mov bx,100 ;判断是否能被100整除 jne is leap mov bx,400 ;判断是否能被400整除 jne notleap isleap: lea dx,yes jmp s3 notleap: lea dx,no s3: lea dx,newline ;换行 输出年份正确时结果的剩余部分 pop bx judge endp code ends end start 第四章

    9、、调试过程及结果先将masm软件存放到d盘里,然后将源程序保存在同样的存储位置,然后点击开始,运行分别输入:-D:-CD MASM-MASM XUXIN其中运行的结果如下图图4-1 运行调试运行结果有错误,通过多次的查找并修改,使源程序没有错误.如图图4-2 运行结果在软件中调试后,输入LINK,-XUXIN运行上面的程序,会出现初始界面.初始界面如图所示:图4-3初始界面在初始界面的光标处,输入1212,回车换行,则显示THE YEAR IS LEAP;并继续输入文件名XUXIN,屏幕继续显示提示输入的语句PLEASE INPUT:!并提示用户继续输入年份,直到输入正确的年份为止;输入200

    10、0,回车换行,则显示THE YEAR is leap year;并继续输入了2008、1000、1999等,程序可以无限循环. 运行结果如图所示:图4-4运行结果总 结4.1设计收获两周的课程设计结束了,本次的课程设计中,我不但对课本上的知识有了更深的了解和巩固,而且还学到了平时在课堂上学不到的东西.短暂的时间里,我学到了不少知识,熟悉了很多程序代码,也认识到了自己有许多不足之处.已掌握的知识也不牢固,遇到一些棘手的问题无法自己解决,但是,我通过询问同学,查询资料,最终使问题得以解决.由此,我深刻体会到,只有在实际编程时我们才能认识到自己的不足之处,才能进而进行弥补来使自己的水平有所提高.这次

    11、课程设计使我对计算机系统汇编有了更加完整的认识:汇编语言主要是研究软件到硬件的程序设计问题,它是计算机能够提供给用户使用的最快而且最有效的语言,也是能够利用计算机所有硬件特性并直接控制硬件的唯一语言.通过查阅资料我拓宽了自己的知识面,增强了学好汇编语言的信心.这不是第一次用汇编语言来设计一个小程序,平时做了很多实验,写了很多小程序.但这次是一个综合的程序,平时的很多程序都用到了.子程序的设计是固定的,因此可以直接从指导资料中调用,大多只需要修改几个参数就可以,这大大方便了我们的设计,为我们节省了很多的时间.不可否认,本程序存在不少缺点和不足,但通过这次课程设计的却找出了自己在学习上的不足,对以

    12、后的学习和工作也有指导作用.我相信在以后的学习中会克服这些不足,达到熟练掌握汇编语言的目的!4.2 心得体会课程设计是我们专业课程知识综合应用的实践训练,也是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础. 实验过程中我们遇到的许多问题仅依靠自己掌握的一些知识是远不能解决的,因此我们发挥团队精神,彼此协作,互相帮助,以集思广益的方式解决了许多问题.大家在实验遇到瓶颈问题时都不曾气馁沮丧,而是翻课本查资料,各尽其能,以求最大

    13、限度的解决问题.遇到问题时我们相互提醒相互借鉴,有效地解决了许多问题.大家这种精诚合作的精神使我非常感动.通过整整一个星期的摸索和编程,查资料,终于把程序完成了,和小组的成员一起讨论问题,分析问题,发现问题,解决问题,也收获了不少,我们的编程技术都有所提高,我们的体会就是:要提高自己的编程能力,你必须亲自去体验、去设计、编辑、编译、调试、运行.每一个程序员都是在失败、尝试、失败、尝试与收获中成长起来的.通过老师的提示及相关实验指导书的资料我们找到了入手点,这点也是我觉得题目设置的比较合理的一点:在已有基础题目的基础上加入创新内容.在基础功能的实现上并没有遇到问题,主要也是有参考内容的知道,同时

    14、通过参考内容更好的把握了设计的整体思路及各个模块的细节.但是在拓展功能上就有不少的问题.就如我所做的电子琴来说,基本功能的程序已经在那里,但是如何使它可以同时用数码管显示音阶呢?我们就找到了数码管显示的相关程序,但是直接相拼接显然是不行的,他们的端口还有重叠的地方,还有就是8255,8253两块芯片的相关使用指令,这些都是关系到我们程序是否实现功能的所在.我们通过翻阅相关资料,逐步解决了相关的问题,然后我们同时也想到了将我们的电子琴做得与众不同,所以想到了旁边的点阵LED显示器,为了使我们的计划成功,同样的我们也翻阅了很多的资料,最后终于完成.最后在老师的提示下,我们完成了在程序中预置歌曲的功

    15、能,还有开机音乐,但是在录制歌曲时出现了问题.我们试了很久,但是最后还是无果而终,留下了一丝遗憾.也希望在以后的实际问题中,能够得到相关解决.也希望老师能够在汇编这一方面多给我们指导.除了微机相关的知识,我通过这个实验更深刻了体会了数字与模拟之间的关系和相互转换的规律.参考资料1 李敬兆, 8086/8088和arm核汇编语言程序设计 中国科技大学出版社,20082 张光长,汇编语言程序设计:北京大学出版社,2009.73 陈够喜等著,微机原理应用实验教程. 北京:人民邮电出版社,20064 刘乐善,微型计算机接口技术及应用.武汉:华中科技大学出版社,20045 沈美明,温冬婵 编著IBMPC汇编语言程序设计(第二版) 清华大学出版社6 张开成,微型计算机原理,西南师范大学出版社,2006.87 谭硫安 张雪兰,windows汇编语言程序设计教程:电子工业大学出版社,2005.4


    注意事项

    本文(基于汇编语言的程序设计Word格式文档下载.docx)为本站会员主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2022 冰点文档网站版权所有

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

    收起
    展开