微机原理课程设计.docx
- 文档编号:26077270
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:6
- 大小:52.52KB
微机原理课程设计.docx
《微机原理课程设计.docx》由会员分享,可在线阅读,更多相关《微机原理课程设计.docx(6页珍藏版)》请在冰豆网上搜索。
微机原理课程设计
微机原理课程设计
《微机原理与接口技术》课程设计
院系:
班级:
姓名:
指导教师:
日期:
一设计任务:
编写一汇编语言程序,要求从键盘接收一个四位的十六进制数,并在终端上显示与它等值的二进制数和十进制数。
(课例027、017、024)
二设计方案
将接收到的数转成16进制数,将这个数保存在一个通用寄存器中(如AX),然后对AX循环做16次SHL,由carry标志寄存器的状态来判断显示0/1。
十六位二进制数保存在BX中,对BX中的二进制数循环左移,每次移一位,然后把BL中的二进制数送给AL,再对AL的前7位进行屏蔽,只留一位原本是最高位的那位二进制数,它要么为1,要么为0。
然而把AL中的这位二进制数转换为十进制数,并且输出,由于AL高7位都为0,所以转换位十进制后,然后要么为1,要么为0,并且与那位二进制数相对应。
这样循环做16次,就把整个BX中的二进制数都显示出来。
软件VisulASMSetup汇编程序的上机过程是:
1)打开软件建立新文件并把程序粘贴在文件上点击汇编源程序
2)下一步然后再点链接目标码
3)然后点调试程序
4)最后点运行程序
三流程图
N
N
1.程序运行结果截图
附录
STACKSEGMENTPARASTACK'STACK'
DW200DUP(0);初始化堆栈大小为
STACKENDS
DATESEGMENT
TRANBDB0DH,0AH,'Thetransformedbinaryis:
',0DH,0AH,'$'
TRANDDB0DH,0AH,'Thetransformeddemicalis:
',0DH,0AH,'$'
RESULTDB5DUP(?
),'$'
DATEENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATE,SS:
STACK
MAINPROCFAR;主程序入口
MOVAX,DATE
MOVDS,AX
MOVBX,0
MOVCH,4
MOVCL,4
INPUT:
SHLBX,CL
MOVAH,01H
INT21H
CMPAL,39H;大于则转移
JAAF
ANDAL,0FH
JMPBINARY
AF:
ANDAL,0FH
ADDAL,09H
BINARY:
ORBL,AL
DECCH
JNZINPUT;转换完成二进制数在BX中
PUSHBX
LEADX,TRANB
MOVAH,9
INT21H;显示字符串
DISPB:
MOVCX,10H;显示二进制数
DISP:
MOVDL,0
ROLBX,1
RCLDL,1
ADDDL,30H
MOVAH,2
INT21H
LOOPDISP
POPBX
MOVCX,5
MOVAX,BX
MOVBX,10
MOVDI,OFFSETRESULT+4
JBY:
XORDX,DX
DIVBX
ORDL,30H
MOVBYTEPTR[DI],DL
DECDI
LOOPJBY
LEADX,TRAND
MOVAH,9
INT21H;显示字符串
MOVDX,OFFSETRESULT
MOVAH,9
INT21H
MOVAH,1
INT21H
MOVAH,4CH;程序结束,返回到操作系统系统
INT21H
RET
MAINENDP
CODEENDS
ENDMAIN
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 课程设计