微机原理实验六__从键盘输入数据并显示

微机原理实验六__从键盘输入数据并显示

ID:38714681

大小:56.00 KB

页数:5页

时间:2019-06-18

微机原理实验六__从键盘输入数据并显示_第1页
微机原理实验六__从键盘输入数据并显示_第2页
微机原理实验六__从键盘输入数据并显示_第3页
微机原理实验六__从键盘输入数据并显示_第4页
微机原理实验六__从键盘输入数据并显示_第5页
资源描述:

《微机原理实验六__从键盘输入数据并显示》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验六从键盘输入数据并显示1要求:编写程序,将键盘接收到的四位十六进制数转换为等值的二进制数,并显示在屏幕上。若输入的不是0—F间的数字,则显示出错信息,并要求重新输入。2目的:掌握接收键盘数据的方法,并了解将键盘数据显示时须转换为ASCII码的原理。实验程序CRLFMACROMOVAH,02H;换行MOVDL,0DHINT21HMOVAH,02H;回车MOVDL,0AHINT21HENDM;宏定义结束DATASEGMENT;数据段MARKDB?MESSDB'pleaseinputthenumber(H),pressinter,tureintonumber(B).pre

2、ssspaceend.',0DH,0AH,'$'ERRORDB0DH,0AH,'inputerror',0DH,0AH,'$'DATAENDS;数据段结束STACKSEGMENT;堆栈段STADW5DUP(?)TOPDW?STACKENDS;堆栈段结束CODESEGMENT;代码段ASSUMECS:CODE,DS:DATA,ES:DATA,SS:STACKSTART:MOVAX,DATAMOVDS,AXMOVES,AXMOVSP,TOP;SP指向堆栈段段尾HEAD:CRLF;输出换行符MOVMARK,0MOVAH,09H;显示9号功能,即字符串显示LEADX,MESSI

3、NT21H;显示提示输入的信息CALLGETNUM;接收键入数值送DXCMPMARK,01H;比较两者大小JEHEAD;如果相等则跳转MOVCX,0010H;16位MOVBX,DXTTT:ROLBX,1;循环左移1位MOVDL,BLANDDL,01H;屏蔽掉高7位ADDDL,30HMOVAH,02H;字符输出INT21H;显示二进制位对应的ASCII字符LOOPTTT;循环跳转tttJMPHEADFINI:MOVAX,4C00H;最后结束语句INT21H;返回DOSGETNUMPROCNEAR;子程序,接收键入数值送DXPUSHCXXORDX,DXGGG:MOVAH,0

4、1HINT21H;调用中断CMPAL,0DH;输入为回车,则进行转换JEPPPCMPAL,20H;输入为空格,则退回DOSJEFINICMPAL,30HJBKKK;输入有误,显示errorCMPAL,11HJBKKKCMPAL,2AHJBKKKCMPAL,2FHJAKKKSUBAL,20H;使大小写输入一样MOVAH,ALCMPAL,'9'JBESAVE1;大于零,且小于等于9,直接将ASCII码存放于HEX1变量。ANDAL,0DFH;将输入的小写转化为大写。相当于SUBAL,20HCMPAL,'A'JBERROR;小于A,转错误处理。MOVAH,ALSUBAH,'A

5、'-10;以上两行,假设为A-F,则将ASCII形式转为十六进制数。CMPAL,'F'JBESAVE2;大于A,小于F,转保存到HEX2变量处理。SAVE1:MOVHEX1,AHMOVAH,2MOVDL,0DHINT21HMOVDL,0AHINT21HMOVDL,HEX1INT21H;这一小段为显示0-9之间的十进制数的ASCII码,显示完退出程序。JMPGGGSAVE2:PUSHAX;先保存AX的值MOVAH,2MOVDL,0DHINT21HMOVDL,0AHINT21HMOVCX,2;设置循环次数为2次LEASI,CS1;将除数的首地址送出SILEADI,HEX2;

6、将要存入的十进制ASCII码的变量的首地址送入DIPOPAX;恢复AX的值MOVAL,AH;将十六进制数送入AL,作被除数JMPGGGZHW10:XORAH,AHDIVBYTEPTR[SI]ADDAL,30HMOV[DI],ALINCSIINCDIMOVAL,AHLOOPZHW10;这一小段,用于将十六进制数转化为十进制数并将每一位变为ASCII码后存入变量HEX2MOVDX,OFFSETHEX2MOVAH,9INT21H;以ASCII码形式显示A-F转化后的十进制数。KKK:MOVAH,09HMOVDX,OFFSETERROR;把error的偏移地址附给DXINT21

7、HMOVMARK,01HPPP:PUSHDXCRLFPOPDXPOPCXRET;子程序返回GETNUMENDPCODEENDSENDSTART

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。