微机原理课程设计

微机原理课程设计

ID:25637868

大小:132.19 KB

页数:8页

时间:2018-11-21

微机原理课程设计_第1页
微机原理课程设计_第2页
微机原理课程设计_第3页
微机原理课程设计_第4页
微机原理课程设计_第5页
资源描述:

《微机原理课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、《微机原理与接口技术》课程设计院系:班级:姓名:指导教师:日期:一设计任务:编写一汇编语言程序,要求从键盘接收一个四位的十六进制数,并在终端上显示与它等值的二进制数和十进制数。(课例027、017、024)二设计方案将接收到的数转成16进制数,将这个数保存在一个通用寄存器中(如AX),然后对AX循环做16次SHL,由carry标志寄存器的状态来判断显示0/1。十六位二进制数保存在BX中,对BX中的二进制数循环左移,每次移一位,然后把BL中的二进制数送给AL,再对AL的前7位进行屏蔽,只留一位原本是最高位的

2、那位二进制数,它要么为1,要么为0。然而把AL中的这位二进制数转换为十进制数,并且输出,由于AL高7位都为0,所以转换位十进制后,然后要么为1,要么为0,并且与那位二进制数相对应。这样循环做16次,就把整个BX中的二进制数都显示出来。软件VisulASMSetup汇编程序的上机过程是:1)打开软件建立新文件并把程序粘贴在文件上点击汇编源程序2)下一步然后再点链接目标码3)然后点调试程序4)最后点运行程序开始三流程图初始化循环计数值BX循环逻辑左移一个数位N输入一个四位的十六进制数>9吗?N转换为十进制显示

3、二进制数循环计数器=0?结束1.程序运行结果截图附录STACKSEGMENTPARASTACK'STACK'DW200DUP(0);初始化堆栈大小为STACKENDSDATESEGMENTTRANBDB0DH,0AH,'Thetransformedbinaryis:',0DH,0AH,'$'TRANDDB0DH,0AH,'Thetransformeddemicalis:',0DH,0AH,'$'RESULTDB5DUP(?),'$'DATEENDSCODESEGMENTASSUMECS:CODE,DS:D

4、ATE,SS:STACKMAINPROCFAR;主程序入口MOVAX,DATEMOVDS,AXMOVBX,0MOVCH,4MOVCL,4INPUT:SHLBX,CLMOVAH,01HINT21HCMPAL,39H;大于则转移JAAFANDAL,0FHJMPBINARYAF:ANDAL,0FHADDAL,09HBINARY:ORBL,ALDECCHJNZINPUT;转换完成二进制数在BX中PUSHBXLEADX,TRANBMOVAH,9INT21H;显示字符串DISPB:MOVCX,10H;显示二进制数DI

5、SP:MOVDL,0ROLBX,1RCLDL,1ADDDL,30HMOVAH,2INT21HLOOPDISPPOPBXMOVCX,5MOVAX,BXMOVBX,10MOVDI,OFFSETRESULT+4JBY:XORDX,DXDIVBXORDL,30HMOVBYTEPTR[DI],DLDECDILOOPJBYLEADX,TRANDMOVAH,9INT21H;显示字符串MOVDX,OFFSETRESULTMOVAH,9INT21HMOVAH,1INT21HMOVAH,4CH;程序结束,返回到操作系统系统I

6、NT21HRETMAINENDPCODEENDSENDMAIN

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

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

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