- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
微机原理课程设计
课程设计内容:
由键盘输入任意四位十六进制数转换为二进制输出
即若输入数字0至9或字符A至F,则转换为二进制输出;若输入为其它,则程序退出。
程序分析
将十六位二进制数保留在BX中,对BX中二进制数循环左移,
每次移一位,然后把BL中二进制数送给AL,再对AL前7位进行屏蔽,只留一位原本是最高位那位二进制数,它要么为1,要么为0。然后把AL中这位二进制数转化为十进制数,而且输出。因为AL高7位全部为0,所以转换为十进制数,而且输出。因为AL高7位全部为0,所以转换为十进制后,仍然要么为1,要么为0,而且和那位二进制数相对应。做16次循环,显示整个二进制数。
步骤图
程序步骤图
开始
开始
屏幕显示字符
调用输入函数
调用显示函数
返回
结束
输入函数INPUT步骤图
开始
开始
BX寄存器清空,DI置循环次
键盘输入单字符存入AL
AL30
AL=39
AL41
AL=46
AL-30
BX左移4位
AX和BX累加后放入
DI=DI
DI=0
错
误
处
理
AL-37
结束
N
N
N
N
Y
Y
Y
Y
N
输出函数DISPLAY步骤图
开始
开始
结束
置初值CX=16
BX左移一位
输出字符0
CF=1
CX=0
输出字符1
Y
Y
N
N
三、程序代码及分析
DATASEGMENT
TIPDB0DH,0AH,INPUTADATAOFHEXFORM:$
WRONG1DB0DH,0AH,INAVAILABLEINPUT!:$,0DH,0AH
DATAENDS
CODESEGMENT
MAINPROCFAR ;调用主函数
ASSUMECS:CODE,DS:DATA
MOVAX,DATA
MOVDS,AX;装数据段
START:MOVAH,9
MOVDX,OFFSETTIP
INT21H;屏幕显示提醒输入字符
CALLINPUT
CALLDISPLAY
JMPSTART
RET
MOVAX,4C00H
INT21H
MAINENDP ;主函数结束
;-----------------------------------键盘输入函数
INPUTPROCNEAR
XORBX,BX
MOVDI,4;要求输入四位十六进制数,置数
NCHAR:MOVAH,1
INT21H;从键盘输入一个字符系统功效调用
CMPAL,30H
JBWRONG
CMPAL,39H
JBESOLVE1
CMPAL,41H
JBWRONG
CMPAL,46H
JBESOLVE2
JMPWRONG;判定是否输入有效字符
SOLVE1:SUBAL,30H ;0-9,将ASCII码转为二进制数
JMPGOON
SOLVE2:SUBAL,37H ;A-F,将ASCII码转为二进制GOON:MOVCL,4;将转换后二进制数位依次存入寄存器[BX]
SALBX,CL
MOVAH,0
ADDBX,AX
DECDI;输入满四个字符后返回
JNZNCHAR;正常返回,准备输入下一个数
JMPBACK1
WRONG:MOVAH,9 ;含有非十六进制数码,报错后退出程序
MOVDX,OFFSETWRONG1
INT21H
MOVAX,4C00H
INT21H
BACK1:RET
INPUTENDP ;输入程序结束
;---------------------------------显示字符函数
DISPLAYPROCNEAR
MOVCX,16
MOVDL,20H ;插入一个空格系统功效调用
MOVAH,02HINT21H
NEXT:SHLBX,1
JCCASE1
MOVDL,30H 输出字符0
MOVAH,02H
INT21H
LOOPNEXT
JMPBACK2
CASE1:MOVDL,31H 输出字符1
MOVAH,02H
INT21H
LOOPNEXT
BACK2:RET
DISPLAYENDP
CODEENDS
ENDMAIN
四、运行结果
五、附录程序清单
4位16进制转换2进制程序
输入程序
输出程序
您可能关注的文档
最近下载
- 经皮冠状动脉介入治疗指南(2025).pptx
- 2025高校教师资格证之高等教育学题库(培优a卷).docx VIP
- 机械原理带传动教程课件.ppt VIP
- 医疗机构内同一检验项目在不同检测系统上可比性的验证 医疗机构内同一检验项目在不同检测系统上可比性的验证.pptx VIP
- 高校教师资格证之高等教育学题库(全优).docx VIP
- 《城镇供水定价成本监审办法》全文.pdf VIP
- 全球数字经济白皮书(202401)-CAICT.pdf VIP
- 全球数字经济白皮书(2025年).pdf VIP
- 结构化学期末复习试题15套.pdf VIP
- SY/T 6610-2017 硫化氢环境井下作业场所作业安全规范.pdf VIP
文档评论(0)