版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
茨5卫对课程设计说明书课程名称:微机原理课程设计题目数制转换实验院系:理学院专业班级:应用物理13-1学号:2013305188学生姓名:李立才指导教师:李声2016年6月17日
理学院院系信计教研室学号2013305188学生姓名李立才专业(班级)应物13-1设计题目数制转换实验,小写转大写实验在masmforwindows上经debug调试可运行;可满足设计要求。2016年6月17日理学院院系信计教研室学号2013305188学生姓名李立才专业(班级)应物13-1ASCII为掌握键盘接受数据的方法,并了解将键盘数据显示时必须转换为码的原理,编写程序,将键盘接受到的四位十六进制数据转换为等值的二进制数显示。ASCII为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。查阅相关材料,完成设计,完成设计报告工1.综2.1.综2.查阅资料,完成设计。3.完成设计报告。作
姚燕南薛钧义主编.《微型计算机原理》第四版[M].西安电子科技大学出版社潘峰主编.《微型计算机原理与汇编语言》第三版[M].电子工业出版社.雏逢兴编著.《计算机硬件技术基础》[M]高等教育出版社.指导教师签字教研室主任签字指导教师签字安徽理工大学课程设计(论文)成绩评定表学生姓名:课程设计题目:李立才学号:2013305188数制转换实学生姓名:课程设计题目:李立才学号:2013305188数制转换实专业班级:应物13-1指导教师评语:成绩:指导教师:TOC\o"1-5"\h\z课程设计实验目的与要求1从键盘输入数据并显示1将键盘输入的小写字母转换成大写字母1课程设计实验内容1从键盘输入数据并显示1将键盘输入的小写字母转换成大写字母2课程设计实验流程图2从键盘输入数据并显示2将键盘输入的小写字母转换成大写字母3课程设计实验程序4从键盘输入数据并显示4将键盘输入的小写字母转换成大写字母8课程设计实验运行结果12从键盘输入数据并显示12将键盘输入的小写字母转换成大写字母12课程设计实验心得13课程设计实验目的与要求从键盘输入数据并显示掌握键盘接受数据的方法,并了解将键盘数据显示时必须转换为ASCII码的原理,编写程序,将键盘接受到的四位十六进制数据转换为等值的二进制数显示。掌握子程序定义和调用的方法。掌握循环移位指令的用法和无符号数比较大小的方法。将键盘输入的小写字母转换成大写字母了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。熟练掌握汇编语言程序设计的方法及上机步骤掌握将小写字母转换为相应的大写字母的方法掌握子程序的设计方法掌握DOS功能的调用方法课程设计实验内容从键盘输入数据并显示为了解小写字母和大写字母在计算机内的表示方法,并学习如何进行转换,编写程序,接受键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。课程设计要求进行小写字母到大写字母的转换。其实字母大小写的区别在于他们的ASCII码范围,它们之间的转换其实就是加减相应的ASCII码值。在判断输入的字母是大写的还是小写的(即判断输入符号ASCII码在41H~5AH还是在61H~7AH内)之后,决定判断是加上还是减去ASCII码值
第一步是实现小写字母向大写字母的转换,主要利用小写字母比大写字母大20H的关系。第二部要键盘输入,显示输出。课程设计实验流程图从键盘输入数据并显示图3-1实验流程图■、itHrt图3-2实验流程图课程设计实验程序从键盘输入数据并显示datasegment;数据区定义开始strrdb'pleaseinputhexadecimalnumber:$'errrdb'thisisanerrornumber!$';数据区定义结束dataendsstacksegmentstack;堆栈区定义开始db100dup();堆栈区定义结束stackendscodesegment;代码区定义开始assumecs:code,ds:data,ss:stackstart:movax,datamovds,axmovax,stackmovss,ax;设定区址movcx,00hxorbx,bxcallgetnum;按提示输入四个字符,存入BX中movcx,10h;用于下面的loopnex处,因为BX共有16位callnewline;转到新行movdl,0ahmovah,02hint21h;换行movdl,0dhmovah,02hint21h;回车next:rolbx,1;把BX所存字符的二进制的最高位移到最低位movdl,blanddl,01h;获取最低位adddl,30h;将最低位转成数字,即字符’0或’1'movah,02hint21h;即将之前BX的最高位输出到屏幕loopnext;循环,将BX的每一位都输出来movah,4chint21h;完成;功能:接受四个字符,必须输入0-9A-F,否则提示错要重输;假设先后输入1234则最后BX为0x1234getnumprocnear;子过程getnum开始again:pushcxmovcl,4shlbx,cl;把BX左移四位,空出了低四位again1:callnewline;转到新行leadx,strrmovah,09hint21h;输出"pleaseinputhexadecimalnumber:"movah,01hint21h;接受输入字符cmpal,46hjadone;如果字符比’欧则转到donecmpal,41hjbnext1;如果字符比’A小则转到next1subal,07h;如果字符在^和’F间,则减七;提示:数字1-9为0x31-0x39,字符A-F处理后为0x3A-0x3F,正好接在数字后jmpttnextl:cmpal,39hjadone;如果字符比’9大则转到donett:cmpal,30hjbdone;如果字符比’0小则转到donesubal,30h;减0x30,于是原字符0-9A-F变成相应的十六进制数0x0-0xFmovah,00haddbx,ax;把0x0-0xF存到bx的低四位popcxinccxcmpcx,04h;是否循环了四次jett2;是的话就跳到tt2结束jmpagain;否则跳到agair再来一次done:callnewlineleadx,errrmovah,09hint21h;如果输入的字符不符合要求,输出错误提示jmpagain1;转到againl#次接受输入tt2:ret;子过程getnum结束getnumendp;功能:输出回车换行符,即转到新行newlineprocnear;子过程newline开始movdl,0ah;设输出字符为0x0A,即换行符movah,02hint21hmovdl,0dh;设输出字符为0x0D,即回车符movah,02hint21hret;子过程newline结束newlineendp;;代码区定义结束codeends;指定执行起点endstart将键盘输入的小写字母转换成大写字母DATASSEGMENTMESSAGEDB'Welcometothesystem!',13,10,13,10DB'Thefunctionoftheprogramischangingsmallletterstocapitalletters.',13,10DB'Ifyouentercapitallettersornumberstherewillbenochanges.',13,10,13,10DB'Pleaseenterastring・’,13,10,'$'CRDB13,10,'$'回车换行STRINGDB100DB0DB80DUP(0)定;义缓冲区AGAINDB'Doyouwanttotryagain(YorN)',13,10,'$'CRERRORDB'ERROR!',13,10,'Pleaseentertherightcommomds.',13,10择都;误提示DATASENDSSTACKSSEGMENTDB200DUP()STACKSENDSCODESSEGMENTASSUMECS:CODES,DS:DATAS,SS:STACKSSTART:HEAD:MOVAX,DATASMOVDS,AXLEADX,MESSAGE输出;提示语MOVAH,09HINT21HLEADX,STRINGMOVAH,0AHINT21H把字符串输入到BUF区LEADX,CRMOVAH,09HINT21H以上为回车换行LEASI,STRING+2把;字符串首地址存入BXMOVCL,STRING+1把;字符个数存CXMOVCH,0NEXT1:MOVDL,[SI]CMPDL,'a'JBNEXT2CMPDL,'z'JANEXT2;ASCII码小a和大于z的跳过,其余的减32SUBDL,20H;大小写字母的ASCII码32差NEXT2:MOVAH,02HINT21HINCSI;BX自加,判断下一个字符DECCX;CX自减,最终将是0JNENEXT1;CX非零时,跳回NEXT1MOVDX,OFFSETCR输出回车换行MOVAH,09HINT21HJMPEXITOVERFLOW:;错误提示LEADX,CRMOVAH,09HINT21HLEADX,ERRORMOVAH,09HINT21HEXIT:LEADX,CRMOVAH,09HINT21HLEADX,AGAIN提;示是否再试一次MOVAH,09HINT21HMOVAH,01HINT21HPUSHAXLEADX,CRMOVAH,09HINT21HPOPAXCMPAL,'Y'JZHEADCMPAL,'y'JZHEADCMPAL,'N'JZOVERCMPAL,'n'JZOVERJMPOVERFLOWOVER:MOVAH,4CHINT21HCODESENDSENDSTART5.课程设计实验运行结果从键盘输入数据并显示图5-1实验运行结果将键盘输入的小写字母转换成大写字母图5-2实验运行结果6.课程设计实验心得通过这次课程设计,使我认识到自己理论知识掌握不够,对于许多指令和一些基本的编程方法都掌握不清晰。为了顺利完成课程设计,我重新拿起课本,用心阅读,问题才一一解决。由此看来,知识只有在实践中才能真正掌握。难怪人们说汇编语言编程必须在使用中慢慢理解。本学期做了许多微机原理的实验,开始以为这次课程设计会像前几次实验简单。直到要编写程序实现的时候,才发现自己对汇编程序的了解确实还不够,尤其是编程方面的能力有待提高。在不断地再次学习和理解过程中,我慢慢掌握了更多汇编语言的应用知识,最终写出了大小写字母转换的程序。把编写好的程序输入软件时候,也出现了许多小问题,比如没有定义变量等等。归纳起来都是因为编程掌握不牢固,写程序没有条理,加上自己粗心大意的恶习依旧没改正造成的,以后需要努力改正。总的来说,这次课程设计,自己受益匪浅。不但加固了微机原理知识的理解,而且加强了对汇编语言的应用能力。同时,非常感谢指导老师与同学给予我在编程方面的帮助,让我能够完成这次设计。参考文献姚燕南薛钧义主编微型计算机原理第四版)M],西安:西安电子科技大学出版社,2003潘峰主编微型计算机原理与汇编语言第三版)M],西安电子工业出版社,2003雏逢兴编著计算机硬件技术基础M],北京:高等教育出版社,1998王永山等编著微型计算机原理与应用®],西安:电子科技大学出版社,1999舒贞权等编著.Intel8086/808系列微型计算机原理[M]西安:西安交通大学出版社,1993[6]HwangS,ChoiS.Ironbird
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 船舶污水处理与资源回收方案
- 贴身上衣项目运营指导方案
- 绿色建筑项目部管理规章
- 脐疝带细分市场深度研究报告
- 研磨用刚玉砂市场发展前景分析及供需格局研究预测报告
- 建筑物维修行业相关项目经营管理报告
- 2024年全球供应链合同:货物买卖条款汇编
- 2024年供需双方合同
- 雪橇体育用品市场分析及投资价值研究报告
- 建筑行业合同范本(2篇)
- 内外部项目合作管理制度
- 输尿管软镜的手术操作
- 高血压病三级预防策略 医学类模板 医学课件
- 教师进企业实践日志
- 2024版新房屋装修贷款合同范本
- 15MW源网荷储一体化项目可行性研究报告写作模板-备案审批
- 北师大版二年级数学上册第五单元《2~5的乘法口诀》(大单元教学设计)
- 少先队辅导员笔试题库附有答案
- 婴儿培养箱校准规范
- 《补贴与反补贴措施协议》对出口信贷的法律规制研究2
- 铁道运输实训总结报告
评论
0/150
提交评论