资源描述:
《《微机原理》课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《微机原理》课程设计报告班级:姓名:学号:一、目的结合微机原理课程的学习,进一步巩固所学只是,掌握汇编语言的编程要领,熟悉汇编程序上机过程以及进行程序调试。二、设计任务,程序清单,流程图任务1(具体题目要求):字符串匹配设计为掌握提示信息的设置方法及读取键入信息的方法。编写程序实现两个字符串比较。如相同,则显示:“MATCH”,否则,则显示“NOMATCH”程序清单:DATASEGMENTINPUT1DB'INPUTSTRING1!',0DH,0AH,'$'INPUT2DB'INPUTSTRING2!',0DH,0AH,'$'MATDB0
2、DH,0AH,'MATCH!$'MISMATDB0DH,0AH,'NOMATCH!$'LEN1DB20STRING1DB20DUP(?)LEN2DB20STRING2DB20DUP(?)DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATAMAINPROCFARMOVAX,DATAMOVDS,AXMOVES,AXMOVAH,09HMOVDX,OFFSETINPUT1INT21HMOVAL,LEN1MOVBX,OFFSETSTRING1MOV[BX],ALMOVAH,0AHMOVDX,OFFSETS
3、TRING1INT21HCALLCRLFMOVAH,09HMOVDX,OFFSETINPUT2INT21HMOVAL,LEN2MOVBX,OFFSETSTRING2MOV[BX],ALMOVAH,0AHMOVDX,OFFSETSTRING2INT21HCALLCRLFCLDLEASI,STRING1LEADI,STRING2MOVCX,5REPECMPSBJNENOMATMOVAH,9MOVDX,OFFSETMATINT21HJMPEXITNOMAT:MOVAH,9LEADX,MISMATINT21HEXIT:MOVAH,4CHINT21
4、HCRLFPROCNEARMOVDL,0DHMOVAH,2INT21HMOVDL,0AHMOVAH,2INT21HRETCRLFENDPMAINENDPCODEENDSENDMAIN流程图:使用INT21H的0A号子功能,接收键入字符串1返回DOS显示“MATCH”显示“NOMATCH”所有字符相等吗?字符串1和串2中所有字符作比较开始段寄存器初始化显示“请输入字符串1”使用INT21H的0A号子功能,接收键入字符串1显示“请输入字符串2”…….任务2(具体题目要求)将键盘输入的小写字母转换为大写字母的设计为了解小写字母和大写字母在计算机
5、内的表示方法,并学习如何进行转换。编写程序,接收键盘字符,并将其中的小写字母转变为大写字母,然后显示在屏幕上。程序清单:CRLFMACROMOVDL,0DHMOVAH,02HINT21HMOVAH,02HMOVDL,0AHINT21HENDMDATASEGMENTINPUT1DB100DB0DB100DUP('$')MES1DB'PleaseInputaString:',0DH,0AH,'$'MES2DB'TheOutputIs:',0DH,0AH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAST
6、ART:MOVAX,DATAMOVDS,AXTISHI:MOVAH,09HMOVDX,OFFSETMES1INT21HINPUT:MOVDX,OFFSETINPUT1MOVAH,0AHINT21HCRLFMOVCX,00HMOVCL,[INPUT1+1]LEASI,[INPUT1+2]NEXT:CMPBYTEPTR[SI],'a'JBCONTCMPBYTEPTR[SI],'z'JACONTSUBBYTEPTR[SI],20HCONT:INCSILOOPNEXTTISHI1:MOVAH,09HMOVDX,OFFSETMES2INT21HOU
7、TPUT:LEADX,[INPUT1+2]MOVAH,09HINT21HEXIT:MOVAH,4CHINT21HCODEENDSENDSTART流程图:返回DOS将小写转换为大写输入是大于‘z’吗?输入是小于‘a’吗?使用INT21H的09号子功能,输出大写字符串CL为0吗?CL自减一SI自加一指向下一字符开始段寄存器初始化显示“请输入一字符串”使用INT21H的0A号子功能,接收键入字符串输入字符串字符个数给CL指针SI指向输入字符串首地址任务3(具体题目要求)键盘输入数据并显示的设计为掌握接收键盘数据的方法,并了解将键盘数据显示时须转
8、换为ASCII码的原理。编写程序,将键盘接收到的四位十六进制数据转换为等值的二进制数,再显示在终端上。程序清单:CRLFMACROMOVAH,02HMOVDL,0DHINT21HMOVAH,0