汇编语言语法练习与代码转换.docx
- 文档编号:28733999
- 上传时间:2023-07-19
- 格式:DOCX
- 页数:8
- 大小:146.72KB
汇编语言语法练习与代码转换.docx
《汇编语言语法练习与代码转换.docx》由会员分享,可在线阅读,更多相关《汇编语言语法练习与代码转换.docx(8页珍藏版)》请在冰豆网上搜索。
汇编语言语法练习与代码转换
实验报告
(2014/2015学年第二学期)
课程名称
微型计算机原理与接口技术
实验名称
汇编语言语法练习与代码转换
实验时间
2016
年
10
月
13
日
指导单位
计算机学院、软件学院
指导教师
顾磊
学生姓名
杜刚
班级学号
141103
学院(系)
通信工程
专业
信息工程
实验报告
实验名称
汇编语言语法练习与代码转换
指导教师
顾磊
实验类型
验证
实验学时
2
实验时间
一、实验目的和要求
1.掌握汇编语言源程序的格式;
2.进一步学习汇编语言源程序的编辑、汇编、目标文件的链接和可执行文件的执行全过程;
3.掌握编辑软件、TASM、TLINK和TD的使用方法、掌握汇编语言的语法规则。
4.实验内容:
(1)练习实验指导上的实验示例:
练习并掌握汇编语言开发全过程,显示5行HELLO
(2)排除语法错误:
给出的是一个通过比较法完成8位二进制数转换成十进制数送屏幕显示功能的汇编语言源程序,但有很多语法错误。
要求实验者按照原样对源程序进行编辑,汇编后,根据TASM给出的信息对源程序进行修改,知道没有语法错误为止。
然后进行链接,并执行相应可执行文件。
正确的执行结果在屏幕上显示:
25+9=34
二、实验环境(实验设备)
WindowsXP+轻松汇编软件
3、实验过程描述与结果分析
汇编语言源程序编写好以后, 必须经过下列几个步骤才能在机器上运行:
(1)编辑源程序(生成.ASM文件)
(2)汇编源程序(.ASM → .OBJ)
(3)链接目标程序(.OBJ → .EXE )
(4)调试可执行程序(使用调试程序Debug调试生成的.EXE文件)
(5)运行程序输出结果。
排除语法错误
要求通过比较法完成8位二进制数转换成十进制数送屏幕显示功能的汇编语言源程序。
但有很多语法错误,要求按照原样对源程序进行编辑,汇编后,根据TASM给出的错误信息对源程序进行修改,直到没有语法错误为止,然后进行链接,并执行相应的可执行文件。
正确的执行结果是在屏幕上显示:
25+9=34。
修改后代码:
(分号后为修改)
;FILENAME:
.486
DATASEGMENTUSE16
SUMDB'',''
MESGDB'25+9='
DB0,0,'$';以'$'结尾,没有输出会乱码
N1DB9,0F0H
N2DB25
DATAENDS
CODESEGMENTUSE16
ASSUMECS:
CODE,DS:
DATA
BEG:
MOVAX,DATA
MOVDS,AX
MOVBX,OFFSETSUM
MOVAH,N1
MOVAL,N2
ADDAH,AL
MOV[BX],AH
CALLCHANG
MOVAH,9
MOVDX,OFFSETMESG
INT21H
MOVAH,4CH
INT21H
CHANGPROC
LAST:
CMPBYTEPTR[BX],10
JCNEXT
SUBBYTEPTR[BX],10
INCBYTEPTR[BX+7]
JMPLAST
NEXT:
MOVDL,SUM
ADDBYTEPTR[BX+8],DL
ADDBYTEPTR[BX+7],30H
ADDBYTEPTR[BX+8],30H
RET
CHANGENDP
CODEENDS
ENDBEG
;FILENAME:
.486
DATASEGMENTUSE16
SUMDB'',''
MESGDB'25+9='
DB0,0,'$';以'$'结尾,没有输出会乱码
N1DB9,0F0H
N2DB25
DATAENDS
CODESEGMENTUSE16
ASSUMECS:
CODE,DS:
DATA
BEG:
MOVAX,DATA
MOVDS,AX
MOVBX,OFFSETSUM
MOVAH,N1
MOVAL,N2
ADDAH,AL
MOV[BX],AH
CALLCHANG
MOVAH,9
MOVDX,OFFSETMESG
INT21H
MOVAH,4CH
INT21H
CHANGPROC
LAST:
CMPBYTEPTR[BX],10
JCNEXT
SUBBYTEPTR[BX],10
INCBYTEPTR[BX+7]
JMPLAST
NEXT:
MOVDL,SUM
ADDBYTEPTR[BX+8],DL
ADDBYTEPTR[BX+7],30H
ADDBYTEPTR[BX+8],30H
RET
CHANGENDP
CODEENDS
ENDBEG
;FILENAME:
.486
DATASEGMENTUSE16
MESGDB'HELLO'
DB0,0,0
DATAENDS
CODESEGMENTUSE16
ASSUMECS:
CODE,DS:
DATA
BEG:
MOVAX,DATA
MOVDS,AX
MOVES,AX
MOVCX,5
LL1:
MOVMESG+5,0DH
MOVMESG+6,0AH
MOVMESG+7,'$'
CALLDISP
MOVMESG+5,0
MOVMESG+6,0
MOVMESG+7,0
LOOPLL1
MOVAH,4CH
INT21H
DISPPROC
MOVAH,9
MOVDX,OFFSETMESG
INT21H
RET
DISPENDP
CODEENDS
ENDBEG
四、实验小结(包括问题和解决方法、心得体会、意见与建议等)
微机原理是工科专业的主要专业基础课之一,也是工科学生学习和掌握计算机硬件知识和汇编语言程序设计的入门课程。
通过本课程的学习,使我从应用的角度出发,在理论和实践的上掌握微机的基本组成、工作原理、汇编语言程序设计、接口电路及硬件的连接。
建立系统的整体概念,使我具有微机应用系统软、硬件开发的初步能力。
通过实际模拟操作,加深了对本课程的理解,并对微型计算机的主要技术深入理解、牢固掌握、灵活应用更好的理解编程语言,本次实验我能够根据老师给出的代码理解完成,并且取得满意的结果。
在试验的编程过程中弄清了很多在课堂上没有理解的操作码的含义。
熟悉了各个操作码的使用方法及为什么如此用。
当我把实验的结果做出来之后,真的是非常的激动。
这是一门严谨的课程,错了一点点,也会导致之前的努力,功亏一篑。
培养了我细心以及耐心,我今后会更加地注意到,让自己做每件事都更加完美。
五、指导教师评语
成绩
批阅人
日期
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 汇编语言 语法 练习 代码 转换