汇编课程设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川大学计算机学院
学生实验报告
实验名称:汇编课程设计报告
指导教师:唐宁九
姓名:廖偲
学号:0943111209
班级:软件09级一班
日期:20101114
实验报告
班级______________姓名_______________学号_________
一、实验一:DEBUG基本命令与数据传输指令
二、实验的目的和要求:
• 1.熟练掌握DEBUG的基本调试命令,能够使用DEBUG编写、调试汇编语言程序片段。
• 2.在理解数据传输指令的基础上按照实验内容中指定的程序片段对程序进行调试和记录;
三、实验的环境:
1.硬件环境:cpu
2.26gHZ、内存2G、显存1G、64位总线笔记本电脑
2.软件环境:win7 32位操作系统、8086/8088指令集系统(在windows系统中)、masm的汇编工具。
四、源程序清单:
•MOV AL, 01H
•MOV SI, 0002H
•LEA SI, [SI]
•MOV BYTE PTR [SI], 80H
•LAHF
•XCHG AL, AH
•SAHF
•XCHG AH, [SI]
•SAHF
五、操作内容:
1.从cmd在debug下进入用A命令进行汇编
格式: A [地址]
功能:从键盘输入汇编程序, 并逐条地把汇编指令翻译成机器代码指令存入对应内存单元。如果不指定汇编地址, 则以CS:IP为地址
2. 反汇编命令U使用
格式: U [地址]/[地址范围]
功能: 将指定地址范围内的机器代码翻译成汇编源程序指令显示出来, 并同时显示地址及代码。
注意: 反汇编时一定确认指令的起始地址, 否则得不到正确的结果。
3.寄存器查看/编辑命令r或r寄存器名称
功能: 显示当前所有寄存器内容, 状态标志及将要执行的下一条指令的地址、代码和汇编指令形式。
4. 跟踪运行命令T
格式: T [=起始地址] [指令条数]
功能: 逐条跟踪程序的运行, 同时显示出各寄存器的内容、状态标志和下一条要执行的指令, 当执行够指定的指令数后就暂停程序的运行。
说明: 如果不指定起始地址, 则从CS:IP处开始执行。
不指定指令条数时, 认为只执行一条指令。
六、运行结果:
1.debug中a命令使用
2.u命令
3.r命令
4.t命令
七、实验运行情况分析。
1.使用t单步调试时每条指令(DS=1422H)
MOV AL, 01H ;AX寄存器低8位至为01H,标志寄存器无变化
MOV SI, 0002H ;SI寄存器置为0002H,标志寄存器无变化
LEA SI, [SI] ;LEA将16位源操作数有效地址给目的地址,SI不变还是0002H
;标寄存器无变化
MOV BYTE PTR [SI], 80H ;将一个字节80H存入内存DS:[SI]中(1422H:0002H =80H)LAHF ;将Flag寄存器低8位存入AH中,AX=0201H
XCHG AL, AH ;将AL和AH中的数据互换AX=0102H
SAHF ; 将AH存入Flag寄存器低8位中为01H,CF标志位变为1
XCHG AH, [SI] ; AH和内存中DS:[SI]中数据互换AH=80H,1442H:0002H=01H
SAHF ; 将AH存入Flag寄存器低8位中为80H,CF=0,TF=1
这个程序片段展示了LEA、LAHF、SAHF、XCHG这几个命令使用,标志寄存器的一些标志位
实验报告
一、实验二:DEBUG基本命令与算术运算指令
二、实验的目的和要求:
•熟练掌握DEBUG的基本调试命令,能够使用DEBUG编写、调试汇编语言程序片段。
•在理解算术运算指令的基础上按照实验内容中指定的程序片段对程序进行调试和记录;
三、实验的环境:
1.硬件环境:cpu
2.26gHZ、内存2G、显存1G、64位总线笔记本电脑
2.软件环境:win7 32位操作系统、8086/8088指令集系统(在windows系统中)、masm的汇编工具。
四、源程序清单:
•MOV WORD PTR [0100H], 5564H
•MOV WORD PTR [0102H], 0C279H
•MOV AX, [0100H]
•PUSH AX
•ADD AL, [0102H];说明标志位是如何确定的
•ADC AH, [0103H];说明指令执行原理,包括标志位
•MOV [0104H], AX
•POP AX
•SUB AL, [0102H] ;说明标志位是如何确定的
•SBB AH, [0103H];说明指令执行原理,包括标志位
•MOV [0106H], AX
五、操作内容:
1. 断点调试命令G
格式:g 或g [起始地址][断点地址]
功能:从当前CS、IP指示的位置开始连续执行程序,执行到指定断点处(不包括断点地址指示的指令)暂停执行,在屏幕上显示CPU现场。
2. 内存单元查看命令D
格式:D (默认)或D [地址]
功能:查看指定地址开始的内存区域中各内存单元的内容。
3.内存单元修改命令E
格式:E [地址]
功能:修改指定地址内存单元的内容。
六、运行结果:
1.g命令的使用