首页 微机原理与接口技术设计实验

微机原理与接口技术设计实验

举报
开通vip

微机原理与接口技术设计实验桂林电子科技大学机电工程学院1000150123实验一:编写程序,比较两个字符串STRING1和STRING2所含的字符是否相同,若字符相同则显示“Match”,否则显示“NoMatch”参考程序:DATASEGMENTSTRING1DB'HAPPYASM'LENEQU$-STRING1STRING2DB'HAPPYASM'MESSAGE1DB'MATCH',0DH,0AH,'$'MESSAGE2DB'NOMATCH',0DH,0AH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:D...

微机原理与接口技术设计实验
桂林电子科技大学机电工程学院1000150123实验一:编写程序,比较两个字符串STRING1和STRING2所含的字符是否相同,若字符相同则显示“Match”,否则显示“NoMatch”参考程序:DATASEGMENTSTRING1DB'HAPPYASM'LENEQU$-STRING1STRING2DB'HAPPYASM'MESSAGE1DB'MATCH',0DH,0AH,'$'MESSAGE2DB'NOMATCH',0DH,0AH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,ES:DATASTART:MOVAX,DATAMOVDS,AXMOVES,AXLEASI,STRING1LEADI,STRING2MOVCX,LENCOMPARE:MOVAL,[SI]MOVBL,[DI]CMPAL,BLJNEDISMATCHINCSIINCDILOOPCOMPAREMATCH:LEADX,MESSAGE1JMPDISPDISMATCH:LEADX,MESSAGE2DISP:MOVAH,09HINT21HMOVAH,4CHINT21HCODEENDSENDSTART实验二:编写程序,从键盘输入一串字符,以‘$’或回车结束,将其中的小写字母转变为大写字母,其余字符不做转换,原样输出,结果显示在屏幕上。参考程序:DATASEGMENTBUFDB50DB?DB50DUP(?)INPUTSTRINGDB'PLEASEINPUTASTRING:','$'OUTPUTSTRINGDB'OUTPUTSTRINGIS:','$'ENTERSTRINGDB0DH,0AH,'$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXLEADX,INPUTSTRINGMOVAH,09HINT21HLEADX,BUFMOVAH,0AHINT21HLEADX,ENTERSTRINGMOVAH,09HINT21HLEABX,BUFADDBX,2NEXT1:MOVAL,[BX]INCBXCOMPARE:CMPAL,24HJZDISPCMPAL,61HJBNEXT1CMPAL,7AHJANEXT1SUBAL,20HMOV[BX-1],ALJMPNEXT1DISP:LEADX,OUTPUTSTRINGMOVAH,09HINT21HLEADX,BUF+2MOVAH,09HINT21HMOVAH,4CHINT21HCODEENDSENDSTART实验三:利用子程序方法编写程序,设有10个无符号数的字节序列,查找该序列中的最大值和最小值,并把结果显示在屏幕上。参考程序1:(针对一位10进制数)STACKSEGMENTSTACKDW256DUP(?)TOPLABELWORDSTACKENDSDATASEGMENTBUFDB00H,01H,02H,03H,04HDB05H,06H,07H,08H,09HCOUNTEQU$-BUFENTERSTRINGDB0DH,0AH,'$'MAXSTRINGDB'THEMAXIMUNNUMBERIS:','$'MINSTRINGDB'THEMINIMUNNUMBERIS:','$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXLEASP,TOPMOVSI,OFFSETBUFMOVCX,COUNTCALLBRANCHPUSHAXLEADX,MAXSTRINGMOVAH,09HINT21HPOPAXMOVDL,AHADDDL,30HPUSHAXMOVAH,02HINT21HLEADX,ENTERSTRINGMOVAH,09HINT21HLEADX,MINSTRINGMOVAH,09HINT21HPOPAXMOVDL,ALADDDL,30HMOVAH,02HINT21HMOVAH,4CHINT21HBRANCHPROCNEARJCXZNEXT4PUSHSIPUSHCXPUSHBXMOVBH,[SI]MOVBL,BHCLDNEXT1:LODSBCMPAL,BHJBENEXT2MOVBH,ALJMPNEXT3NEXT2:CMPAL,BLJAENEXT3MOVBL,ALNEXT3:LOOPNEXT1MOVAX,BXPOPBXPOPCXPOPSINEXT4:RETBRANCHENDPCODEENDSENDSTART参考程序二:(针对两位十六进制数或无符号数)STACKSEGMENTSTACKDW256DUP(?)TOPLABELWORDSTACKENDSDATASEGMENTBUFDB0FFH,55H,33H,44H,54HDB45H,46H,47H,48H,1AHCOUNTEQU$-BUFENTERSTRINGDB0DH,0AH,'$'MAXSTRINGDB'THEMAXIMUNNUMBERIS:','$'MINSTRINGDB'THEMINIMUNNUMBERIS:','$'DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVAX,STACKMOVSS,AXLEASP,TOPMOVSI,OFFSETBUFMOVCX,COUNTCALLBRANCHMOVDX,AXPUSHDXLEADX,MAXSTRINGMOVAH,09HINT21HPOPDXMOVAL,DHPUSHDXCALLDISPGAO4POPDXMOVAL,DHPUSHDXCALLDISPDI4LEADX,ENTERSTRINGMOVAH,09HINT21HLEADX,MINSTRINGMOVAH,09HINT21HPOPDXMOVAL,DLPUSHDXCALLDISPGAO4POPDXMOVAL,DLCALLDISPDI4MOVAH,4CHINT21HBRANCHPROCNEARJCXZNEXT4PUSHSIPUSHCXPUSHBXMOVBH,[SI]MOVBL,BHCLDNEXT1:LODSBCMPAL,BHJBENEXT2MOVBH,ALJMPNEXT3NEXT2:CMPAL,BLJAENEXT3MOVBL,ALNEXT3:LOOPNEXT1MOVAX,BXPOPBXPOPCXPOPSINEXT4:RETBRANCHENDPDISPDI4PROCNERR;低四位ANDAL,0FHMOVDL,ALCMPDL,9JLENUM1ADDDL,7NUM1:ADDDL,30HMOVAH,02HINT21HRETDISPDI4ENDPDISPGAO4PROCNERR;高四位SARAL,4ANDAL,0FHMOVDL,ALCMPDL,9JLENUM2ADDDL,7NUM2:ADDDL,30HMOVAH,02HINT21HRETDISPGAO4ENDPCODEENDSENDSTART实验四:8255交通灯参考程序:MY8255_AEQU288H;8255的A口地址MY8255_BEQU289H;8255的B口地址MY8255_CEQU28AH;8255的C口地址MY8255_MODEEQU28BH;8255的控制寄存器地址STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSDATASEGMENTLADB?;定义数据变量LBDB?DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDX,MY8255_MODE;定义8255工作方式MOVAL,80H;工作方式0,A口和B口为输出OUTDX,ALL1:MOVDX,MY8255_A;写A口发出的数据,1组绿灯亮,2组红灯亮MOVAL,24HOUTDX,ALCALLDALLY1MOVCX,05HL2:MOVDX,MY8255_A;写A口发出的数据,1组黄灯亮,2组红灯亮MOVAL,44HOUTDX,ALCALLDALLY2MOVDX,MY8255_A;写A口发出的数据,1组黄灯灭,2组红灯亮MOVAL,04HOUTDX,ALCALLDALLY2LOOPL2L3:MOVDX,MY8255_A;写A口发出的数据,1组绿灯亮,2组红灯亮MOVAL,81HOUTDX,ALCALLDALLY1MOVCX,05HL4:MOVDX,MY8255_A;写A口发出的数据,1组黄灯亮,2组红灯亮MOVAL,82HOUTDX,ALCALLDALLY2MOVDX,MY8255_A;写A口发出的数据,1组黄灯灭,2组红灯亮MOVAL,80HOUTDX,ALCALLDALLY2LOOPL4L5:MOVAH,01H;判断是否有按键按下,调用功能号1INT16H;ROMBIOS功能调用JZL1;无按键则跳回继续循环,有则退出QUIT:MOVAX,4C00H;结束程序退出;INT21H;DOS系统功能调用DALLY1PROCNEAR;软件延时子程序,东西方向红灯亮,南北方向绿灯亮PUSHCXPUSHDIMOVCX,3FFHY1:MOVDI,9000HX1:DECDIJNZX1LOOPY1POPDIPOPCXRETDALLY1ENDPDALLY2PROCNEAR;软件延时子程序,黄灯闪烁(即亮与灭)的时间间隔,PUSHCXPUSHDIMOVCX,3FHY2:MOVDI,9000HX2:DECDIJNZX2LOOPY2POPDIPOPCXRETDALLY2ENDPCODEENDSENDSTART参考程序2:流水灯MY8255_AEQU288H;8255的A口地址MY8255_BEQU289H;8255的B口地址MY8255_CEQU28AH;8255的C口地址MY8255_MODEEQU28BH;8255的控制寄存器地址STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSDATASEGMENTLADB?;定义数据变量DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AXMOVDX,MY8255_MODE;定义8255工作方式MOVAL,80H;工作方式0,A口和B口为输出OUTDX,ALMOVCX,0FFFFHMOVBL,80HL1:MOVDX,MY8255_A;写A口发出的数据MOVAL,BLOUTDX,ALCALLDALLY1RORBL,1LOOPL1QUIT:MOVAX,4C00H;结束程序退出INT21H;DOS系统功能调用DALLY1PROCNEAR;软件延时子程序,东西方向红灯亮,南北方向绿灯亮PUSHCXPUSHDIMOVCX,3FHY1:MOVDI,9000HX1:DECDIJNZX1LOOPY1POPDIPOPCXRETDALLY1ENDPCODEENDSENDSTART实验五:8254一赫兹方波输出参考程序:MY8254_COUNT0EQU280H;8254计数器0端口地址MY8254_COUNT1EQU281H;8254计数器1端口地址MY8254_COUNT2EQU282H;8254计数器2端口地址MY8254_MODEEQU283H;8254控制寄存器端口地址STACK1SEGMENTSTACKDW256DUP(?)STACK1ENDSCODESEGMENTASSUMECS:CODESTART:MOVDX,MY8254_MODE;初始化8254工作方式MOVAL,37H;计数器0,方式3OUTDX,ALMOVDX,MY8254_COUNT0;装入计数初值MOVAL,00;1000分频OUTDX,ALMOVAL,10OUTDX,ALMOVDX,MY8254_MODE;初始化8254工作方式MOVAL,77H;计数器1,方式3OUTDX,ALMOVDX,MY8254_COUNT1;装入计数初值MOVAL,00;1000分频OUTDX,ALMOVAL,10OUTDX,ALQUIT:MOVAX,4C00H;结束程序退出INT21HCODEENDSENDSTART实验六:AD转换(0809)参考程序:CODESEGMENTASSUMECS:CODESTART:MOVDX,298H;启动A/D转换器OUTDX,ALMOVCX,0FFFFHDELAY:LOOPDELAYMOVDX,298HINAL,DXPUSHDXPUSHAXCALLDISPGAO4POPAXPOPDXCALLDISPDI4PUSHDXMOVAH,06HMOVDL,0FFHINT21HPOPDXJESTARTMOVAH,4CHINT21HDISPDI4PROCNERR;低四位ANDAL,0FHMOVDL,ALCMPDL,9JLENUM1ADDDL,7NUM1:ADDDL,30HMOVAH,02HINT21HRETDISPDI4ENDPDISPGAO4PROCNERR;高四位SARAL,4ANDAL,0FHMOVDL,ALCMPDL,9JLENUM2ADDDL,7NUM2:ADDDL,30HMOVAH,02HINT21HRETDISPGAO4ENDPCODEENDSENDSTART
本文档为【微机原理与接口技术设计实验】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
丹丹陪你去流浪
暂无简介~
格式:doc
大小:67KB
软件:Word
页数:0
分类:工学
上传时间:2021-09-26
浏览量:20