收藏 分享(赏)

微机原理及应用实验1 DEBUG命令的功能及使用.doc

上传人:精品资料 文档编号:10178508 上传时间:2019-10-16 格式:DOC 页数:7 大小:134KB
下载 相关 举报
微机原理及应用实验1  DEBUG命令的功能及使用.doc_第1页
第1页 / 共7页
微机原理及应用实验1  DEBUG命令的功能及使用.doc_第2页
第2页 / 共7页
微机原理及应用实验1  DEBUG命令的功能及使用.doc_第3页
第3页 / 共7页
微机原理及应用实验1  DEBUG命令的功能及使用.doc_第4页
第4页 / 共7页
微机原理及应用实验1  DEBUG命令的功能及使用.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、实验一 DEBUG 命令的功能及使用一、实验目的掌握汇编语言基本运行环境和熟悉 DEBUG 调试程序的命令。包括:学习使用指令,掌握常用的指令功能和简单程序设计;掌握 DEBUG 调试程序的命令,熟悉程序输入、存储器和 CPU 寄存器及标志位的检查方法,单步、断点、连续等运行程序的调试方法。二、实验内容DEBUG 的主要命令功能与格式1. 汇编命令 A格式:A : 上式等价于:(1)A :(2)A :(3)A (4)A功能:键入该命令后显示段地址和段内偏移并等待用户从键盘逐条键入汇编命令,逐条汇编成代码指令,顺序存放到段地址和段内偏移所指定的内存区域,直到显示下一地址时用户直接键入回车键返回到

2、提示符“-” 。注:其中(1)用指定段寄存器的内容作段地址, (3)用 CS 的内容作段地址, (4)以CS:100 作地址。以后命令中提及的各种地址形式,均指( 1) 、 (2) 、 (3)中 A 后的地址形式。2. 显示内存命令 D格式:D 上式等价于:(1)D (2)D (3)D功能:以两种形式显示指定范围的内存内容。一种形式为十六进制内容,一种形式为以相应字节的内容作为 ASCII 码的字符,对不可见字符以 代替。注:其中(1)以 CS 为段寄存器。 (3)显示 CS:100 起始的一片内容。3. 修改内存命令 E格式:E 上式等价于:(1)E (2)E 其中 是以逗号分隔的十六进制数

3、,或用 或”括起来的字符串,或者是二者的组合。功能:(1)不断显示地址,可连续键入修改内容,直至新地址出现后键入回车 Enter为止。 (2)将 逐一写入由开始的一片单元。4. 填充内存命令 F格式:F 功能:将单元内容表中的值逐个填入指定范围,单元内容表中内容用完后重复使用。例如:-F 5BC:200 L 10 B2 , XYZ,3C 5. 执行命令 G格式:G =,上式等价于:(1)G(2)G=(3)G=,功能:执行内存中的指令序列注:(1)从 CS:IP 所指处开始执行(2)从指定地址开始执行(3)从指定地址开始执行,到断点自动停止。6. 内存搬家命令 M格式:M 其中源及目标地址若仅输

4、入偏移量,则隐含相对 DS。功能:把 中的内容顺序搬至起的一片连续单元。例如:-M CS:100 110 600把从 CS:100 起至 CS:110 止 17 个字节搬至 DS:600 至 DS:610 的一片单元。7. 结束 DEBUG 返回 DOS 命令 Q格式:Q功能:返回 DOS 提示符下8. 显示修改寄存器命令 R格式:R 上式等价于:(1)R(2)R 功能:(1)显示当前所有寄存器内容,状态标志及将要执行的下一指令的地址,代码及汇编语句形式。其中对状态标志 FLAG 以每位的形式显示,见下表。(2)显示指定寄存器内容例如:-R AX -R F 9. 执行并显示系统环境命令 T格式

5、:T = 功能:执行由指定地址起始的、由指定的若干条命令。其中的缺省值是当前 IP 值,的缺省值是一条。例如:-T 执行当前指令并显示状态-T 10 从当前指令始执行 10H 条指令10. 反汇编命令 U格式:U /上式等价于:(1)U (2)U (3)U功能:将指定范围内的代码以汇编语句形式显示,同时显示地址及代码。注意,反汇编时一定确认指令的起始地址后再作,否则将得不到正确结果。地址及范围的缺省值是上次 U 指令后下一地址的值。这样可以连续反汇编。三、实验例程及步骤例 1 在 DEBUG 下运行如下程序。MOV DL,33H ;字符 3 的 ASCII 码送 DLMOV AH,2 ;使用

6、DOS 的 2 号功能调用INT 21H ;进入功能调用,输出3INT 20H ;BIOS 中断服务程序,正常结束。该程序运行结果是在显示器上输出一个字符3 。如果要输出其它字符,请改变程序中33H为相应字符的 ASCII 码。运行步骤:(1)进入 DEBUG,用 A 命令送程序并汇编,见图 1.1。标志 置位符号 复位符号溢出 OF OV(overflow) NV(no overflow)方向 DF DN(down) UP(up)中断 IF EI(enable interrupt) DI(disable interrupt)符号 SF NG(negative) PL(plus)零位 ZF Z

7、R(zero) NZ(no zero)辅助 AF AC(auxiliary carry) NA(no auxiliary)奇偶 PF PE(parity even) PO(parity odd)进位 CF CY(carry) NC(no carry)(2)用反汇编 U 命令显示程序,图 1.2 为反汇编命令显示结果。图中右边是汇编指令,中间是该汇编指令的机器码,左边是存放该条指令的内存单元地址。(3)用执行命令 G 执行程序,图 1.3 为执行结果。(4)用 E 命令送机器指令程序并用 D 命令显示内存,运行过程见图 1.4。图 1.1 汇编程序过程图 1.2 反汇编命令 U 的显示结果图 1

8、.3 执行命令 G 的显示结果(5)再次用执行命令 G 执行程序,图 1.5 为执行结果。(6)Q 命令退出 DEBUG 返回 DOS。 例 2 在 DEBUG 下运行下述程序,查看执行结果。MOV AX,0FEH ;被乘数 0FEH 送 AXMOV CL,2 SHL AX,CL ;被乘数乘以 4,结果送 AXMOV BX,AX ;被乘数乘以 4 的结果送 BX 保留MOV CL,2 SHL AX,CL ;被乘数乘以 16,结果送 AX ADD AX,BX ;被乘数乘以 20,结果在 AX 中MOV 300H,AX ;将积存入 DS 段第 300H301H 号内存单元MOV AH,4CH ;将

9、功能号 4CH 送 AHINT 21H ;执行 DOS 的 4CH 号功能调用,结束程序返回 DOS。该程序运行结果是将 0FEH 乘以 14H,结果放在 DS 段第 300H-301H 号内存单元中。(1)进入 DEBUG,显示 300H 至 301H 号内存单元内容,见图 1.6。 图 1.4 送机器指令并显示内容结果图 1.5 G 命令执行结果(2)用 A 命令装入程序段并汇编,见图 1.7。(3)用 T 命令执行到断点处(程序正常结束前)停止,执行“-T=100,8 ”后的结果见图 1.8。(4)用 D 命令显示 300H 至 301H 的内容(最终结果) ,如图 1.9 所示。图 1

10、.6 D 命令显示结果图 1.7 用 A 汇编程序图 1.8 用 T 命令执行到断点处的结果(5)用 Q 命令退出 DEBUG 环境,返回 DOS。四、预习要求1. 安装并熟悉 ASM 汇编语言编译环境。2. 预习 DEBUG 的相关命令。3. 复习教材指令系统章节内容,熟悉 8086/8088 指令系统。五、实验报告要求及思考1. 根据实验描述汇编语言的编译过程,并画出相关流程框图;书写对教材指令系统等相关的实验结果。2. 总结 Debug 调试程序的方法。3. 思考题。下面是一个 2 字节非压缩 BCD 码加的程序,试分析程序中被加数和加数以及和分别存放在哪些寄存器中,程序中 CH 有何作用。阅读后再设计一个 2 字节非压缩BCD 码减法程序。然后分别计算 5698?,9015?,并查看各寄存器的内容。MOV CH,AHADD AL,BLAAAXCHG AL,CHADC AL,BHAAAMOV AH,ALMOV AL,CH图 1.9 用 D 命令显示最终结果

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报