汇编语言学习知识代码转换大小写二进制十进制16进制的相当转换.doc

收藏

编号:2615688    类型:共享资源    大小:396.02KB    格式:DOC    上传时间:2020-04-24
8
金币
关 键 词:
汇编语言 学习 知识 代码 转换 大小写 二进制 十进制 16 相当 至关
资源描述:
.\ 《微机原理与接口技术》 课程设计(学年论文) 说明书 课题名称: 代码转换程序设计(A3-2) 学生学号: 专业班级: 学生姓名: 学生成绩: 指导教师: 陈 裕 国 课题工作时间: 2011-6-13 至 2011-6-18 武汉工程大学教务处 制 填写说明: 1. 一、二、三项由指导教师在课程设计(学年论文)开始前填写并交由学生保管; 2. 四、五两项由学生在完成课程设计后填写,并将此表与课程设计一同装订成册交给指导教师; 3. 成绩评定由指导教师按评定标准评分。 4. 此表格填写好后与正文一同装订成册。 一、课程设计任务和基本要求: (一) 设计任务 使用汇编语言设计一个程序,实现大小写字母、二进制与十六进制、十六进制与十进制的转换。 1. 有提示从键盘输入,在提示中最好给一个输入的例子; 2. 输入错误或者输入其他字符,有提示输入错误的信息显示; 3. 能够多次输入和显示结果。 4. 实现从键盘输入16位二进制数,转换成4位十六进制数显示出来。 (二) 基本要求 1. 有程序设计的分析、思路说明; 2. 有程序流程框图; 3. 程序代码及注释说明; 4. 上机实验步骤; 5. 程序运行结果的截屏图片。 指导教师签字: 教研室主任签字: 年 月 日 年 月 日 二、进度安排: 周一上午: 明确课程设计任务和要求、设计原理。 周一下午~周三上午: 查看参考资料、完成理论设计(程序代码、原理图等)。 周三下午~周五: 上机、实验、调试,完成设计。 周六上午: 检查设计结果、提问、答辩。 周六下午: 撰写课程设计报告。 三、应收集资料及主要参考文献: (一)应收集资料 1.有关DOS调用、ASCII码、BCD码的知识; 2. 大小写字母、二进制与十六进制、十六进制与十进制的转换方法; 3.8086宏汇编的相关定义、调用。 (二)主要参考文献 1. 宋杰,汪志宏,江敏.微机原理与接口技术课程设计[M].北京:机械工业出版社,2006 2. 冯博琴.微型计算机计原理与接口技术[M].北京:清华大学出版社,2007 3. 王玉良.微机原理与接口技术[M].北京:北京邮电大学出版社,2000 4. 龚尚福.微机原理与接口技术[M].西安:西安电子科技大学出版社,2008 5. 刘锋.微机原理与接口技术[M]. 北京:机械工业出版社,2009 四、课程设计摘要(中文): 本次课程设计的主要目的是利用汇编语言编写一个程序,实现从键盘多次输入和显示结果从而达到大小写字母、二进制与十六进制、十进制与十六进制之间的转换; 并且当输入错误的字符时,会显示错误信息. 大小写转换,主要利用小写字母比大小字母大20H的关系,将小写字母减20H就转换为大写字母,将大写字母加20H就转换为小写字母;二进制、十进制以及16进制,主要利用0到9的数值等于相应ASCALL码减30H,而A到F的数值等于相应ASCALL码减37H,这样即可利用移位,将键盘输入的值以二进制形式存储在寄存器中,除十取余取整等方法实现其相互转换。 通过这次课程设计,我们了解了宏汇编指令的特点,DOS功能调用的用法,加深了对程序进行汇编的理解,进一步掌握了8088系统中一些指令的用法,从而加深了对课本知识的理解,使我们学以致用,把理论应用于实践. 五、课程设计摘要(英文): 六、成绩评定: 指导教师评语: 指导教师签字: 200 年 月 日 项目 评价 项目 评价 调查论证 工作量、工作态度 实践能力 分析、解决问题能力 质量 创新 得分 七、答辩记录: 答辩意见及答辩成绩 答辩小组教师(签字): 200 年 月 日 总评成绩: (教师评分75%+答辩成绩25%) 课程设计评审标准(指导教师用) 评价内容 具 体 要 求 权重 调查论证 能独立查阅文献和从事其他调研;能提出并较好地论述课题的实施方案;有收集、加工各种信息及获得新知识的能力。 0.1 实践能力 能正确选择研究(实验)方法,独立进行研究工作。如装置安装、调试、操作。 0.2 分析解决问题能力 能运用所学知识和技能去发现与解决实际问题;能正确处理实验数据;能对课题进行理论分析,得出有价值的结论。 0.2 工作量、工作态度 按期圆满完成规定的任务,工作量饱满,难度较大,工作努力,遵守纪律;工作作风严谨务实。 0.2 质量 综述简练完整,有见解;立论正确,论述充分,结论严谨合理;实验正确,分析处理科学;文字通顺,技术用语准确,符号统一,编号齐全,书写工整规范,图表完备、整洁、正确;论文结果有应用价值。 0.2 创新 工作中有创新意识;对前人工作有改进或独特见解。 0.1 代码转换程序设计说明书 1、 方案论证 (1) 大小写字母、二进制与十六进制、十六进制与十进制的转换方法 在计算机系统中有多种数制和编码,常用的有二进制,八进制以及16进制。这些数制和编码虽然在储存形式上各有差异,但彼此也相互联系。 大小写转换,主要利用小写字母比大小字母大20H的关系,将小写字母减20H就转换为大写字母,将大写字母加20H就转换为小写字母。 二进制,十进制以及16进制,主要利用0到9的数值等于相应ASCALL码减30H,而A到F的数值等于相应ASCALL码减37H,这样即可利用移位,除十取余取整等方法实现其相互转换。 (2) 宏汇编程序设计要点 宏是源程序中的一段有独立功能的程序代码。宏指令,用户自定义的指令。编程序时候,将多次使用的功能用一条宏指令来代替。汇编包括指令 ,伪指令,宏指令。前两个都是规定的,最后一个是自己设计的。 好处是用起来方便定义,但是要先定义,后调用,其优点是可以随时随地的调用宏汇编程序。 2、 程序设计 (1) 总体设计   对“实现从键盘输入16位二进制数,转换成4位十六进制数显示出来。”的分析处理。 首先将键盘输入的二进制数以二进制形式储存起来:每次输入,将其ASCALL码值将减去30H,然后左移一位,在然后与下个输入的减30H的数相加,这样就将键盘输入的值以二进制形式储存在寄存器中. 二进制转换为16进制数输出:用循环指令左移四位,取出最低4位,利用16进制所对应的ASCALL码值比其本身大30H或37H的关系,将低位转换成对应的ASCALL码值,再调用DOS系统显示字符功能,将转换后的字符显示出来,如此循环四次即可. 程序总流程图: (2)程序设计 二进制转十六进制流程图: 程序代码及注释: ;7.ASM PUBLIC XP EXTRN INFO4:BYTE,INFO1:BYTE,INFO2:BYTE CODE SEGMENT XP PROC FAR ASSUME CS:CODE CALL DEC2BIN ;调用将键盘输入的ASCALL值转换为二进制数 LEA DX,INFO2 MOV AH,9 INT 21H ;显示提示信息 CALL BIN2HEX;调用将储存的二进制转换为16进制函数 MOV DL,H MOV AH,2 INT 21H RET CAL: MOV DL,0DH MOV AH,2 INT 21H MOV DL,0AH MOV AH,2 INT 21H LEA DX,INFO4 MOV AH,9 INT 21H;输入非二进制数,显示错误 DEC2BIN PROC NEAR LEA DX,INFO1 MOV AH,9 INT 21H;显示提示信息 XOR BX,BX ;BX清零 NEWCHAR: MOV AH,1 INT 21H ;键盘输入,存放在AL中 CMP AL,0DH JE RE;如果输入回车键,键盘输入结束 SUB AL,30H JL CAL CMP AL,1 JG CAL ;输入为非二进制数,显示错误并退出 CBW XCHG AX,BX MOV CX,2 MUL CX XCHG AX,BX ADD BX,AX JMP NEWCHAR;将键盘输入的制转换为二进制数,存放在BX中,并且每输入一个值,先将BX左移一位再相加. RE: MOV DL,B MOV AH,2 INT 21H RET DEC2BIN ENDP BIN2HEX PROC NEAR MOV CH,4 ROTATE: MOV CL,4 ROL BX,CL ;BX每左移4位输出,四位二进制表示一位十六进制 MOV AL,BL AND AL,0FH ADD AL,30H CMP AL,3AH JL PRINTIT ;结果若为0到9的数,则加30H后直接输出 ADD AL,07H ;结果若为A到F的数,则加30H后再加07H直接输出 PRINTIT: MOV DL,AL MOV AH,2 INT 21H DEC CH JNE ROTATE RET BIN2HEX ENDP CRLF PROC NEAR MOV DL,0DH MOV AH,2 INT 21H MOV DL,0AH MOV AH,2 INT 21H ;回车换行 RET CRLF ENDP XP ENDP CODE ENDS END 3、 程序调试步骤与结果 (1) 编辑源程序 (2) 汇编源程序 (3) 连接程序 (4) 在TD中调试程序 (5)程序运行结果 结果说明:当输入小写字母(如a)时,就转换成相应的大写字母(如A),反之亦然;当如入二进制(如1011B),,就转换成相应的十六进数(000BH),反之亦然;如果输入的字母或数字不符合要求,就会显示“INPUT ERROR” 4、 结论
展开阅读全文
提示  淘文阁 - 分享文档赚钱的网站所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:汇编语言学习知识代码转换大小写二进制十进制16进制的相当转换.doc
链接地址:https://www.taowenge.com/p-2615688.html
关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

收起
展开