实验二初级程序的编写与调试实验

实验二初级程序的编写与调试实验

ID:8920665

大小:802.50 KB

页数:17页

时间:2018-04-12

实验二初级程序的编写与调试实验_第1页
实验二初级程序的编写与调试实验_第2页
实验二初级程序的编写与调试实验_第3页
实验二初级程序的编写与调试实验_第4页
实验二初级程序的编写与调试实验_第5页
资源描述:

《实验二初级程序的编写与调试实验》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、重庆大学学生实验报告实验课程名称汇编语言程序设计开课实验室DS1501学院软件学院年级级专业班软件工程班学生姓名学号开课时间2014至2015学年第1学期总成绩教师签名王志平软件工程学院制《汇编语言程序设计》实验报告(格式样本)开课实验室:DS1501机房2014年9月 日学院软件学院年级、专业、班13级软件工程班姓名成绩课程名称汇编语言程序设计实验项目名称实验二:初级程序的编写与调试实验指导教师王志平教师评语教师签名:王志平2014年月日一【实验目的】1.进一步熟悉DEBUG命令;2.掌握数据在内存中的存放方式和内存操作数的几种寻址方式,段寄存器和物理地址计算;3.熟悉

2、数据传送指令、算术运算指令、逻辑指令、数据串传送程序和数据串传送指令MOVS、STOS及重复前辍REP;4.掌握简单的汇编语言程序编写与调试。二【实验环境】PC微机;DOS操作系统或Windows操作系统;MASM.EXE,LINK.EXE,DEBUG.COM或宏汇编集成环境。三【实验要求】1.仔细阅读有关DEBUG命令的内容,对有关命令,要求事先准备好使用的例子;2.阅读数据传送指令、算术运算指令、逻辑指令、数据串传送程序和数据串传送指令MOVS、STOS及重复前辍REP的内容;3.用DEBUG的有关命令调试本实验中的求累加和程序、多字节加法程序、数据串搬家程序段。四【

3、预备知识】Debug的使用(1)什么是Debug?Debug是DOS、Windows都提供的实模式(8086方式)程序的调试工具。使用它,可以查看CPU各种寄存器中的内容、内存的情况和在机器码级跟踪程序的运行。(2)我们用到的Debug功能l用Debug的R命令查看、改变CPU寄存器的内容;l用Debug的D命令查看内存中的内容;l用Debug的E命令改写内存中的内容;l用Debug的U命令将内存中的机器指令翻译成汇编指令;l用Debug的T命令执行一条机器指令;l用Debug的A命令以汇编指令的格式在内存中写入一条机器指令。五【实验内容】1.内存操作数及各种寻址方式使用

4、;2.求累加和程序;3.多字节加法程序;4.数据串搬家程序;5.段寄存器概念及字符串传送指令练习。六【实验步骤】1.内存操作数及各种寻址方式使用MOVAX,1234MOV[1000],AXMOVBX,1002MOVBYTEPTR[BX],20MOVDL,39INCBXMOV[BX],DLDECDLMOVSI,3MOV[BX+SI],DLMOV[BX+SI+1],DLMOVWORDPTR[BX+SI+2],2846步骤:(1)用A命令键入上述程序,并用T命令逐条运行。(2)每运行一条有关内存操作数的指令,要用D命令检查并记录有关内存单元的内容并注明是什么寻址方式。注意D命令

5、显示结果中右边的ASCII字符及双字节数存放法。立即选址方式:MOVAX,1234MOVBX,1002MOVDL,39MOVSI,3直接寻址方式:MOV[1000],AXMOVBYTEPTR[BX],20MOV[BX],DL基址变址寻址方式:MOV[BX+SI],DLMOV[BX+SI+1],DLMOVWORDPTR[BX+SI+2],28462.求累加和程序:程序:MOVBX,1000MOVCX,10SUBAX,AXLOP:ADDAL,[BX]ADCAH,0INCBXJ:LOOPLOPINT3步骤:(1)用A命令将程序键入到100H开始的内存中,在键入时记下标号LOP和

6、J的实际地址,在键入LOOP指令时LOP用实际地址值代替;(2)用命令NAA将此程序命名为文件AA(文件名可任取);(3)用R命令将BX:CX改为程序长度值(即最后一条指令后面的地址减去开始地址;(4)用命令W100将此程序存到AA命名的磁盘文件中;(5)用命令Q退出DEBUG;(6)用命令DEBUGAA再次调入DEBUG和文件AA,可用U命令检查调入程序;(7)用E命令在内存地址1000H处键入16个数字;(8)用命令G=100J(J用实际地址代替),使程序运行并停在断点J上,检查AX,BX的值是否符合你的预计值;如:G=0100010D【说明:G就是连续执行内存代码,

7、可以在G后面指定内存地址如G=0000:0100;地址可以是偏移地址,也可以是逻辑地址。如不指定地址,G就会从指令指针ip指的内存处开始执行;G命令还可以指定执行断点,如,G=0000:01000000:0200就是代码从100的内存地址执行到200的内存地址然后断住。】(9)用T命令运行一步,观察程序方向(IP值)和CX值是否与你的估计一样,若不一样,检查程序是否有错;(10)重复G、J与T,再检查AX是否正确;(11)用G命令使程序运行到结束,检查AX值是否正确。【说明:G=100是指从偏移量:0100开始执行,直到程序结

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

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

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