“汇编语言(第 2 版,郑晓薇著)配套实验”实验报告

DOS及DEBUG介绍

实验名称:DOS及DEBUG介绍与运用
实验日期:9.19

一. 实验预习报告 实验相关知识简述:DOS与DEBUG的运用 实验原理预习情况

1)数制 在汇编语言中,数值后面分别用字母B,D,H代表二进制,十六进制,十进制(十进制数后面可以省略D),在计算机中还规定采用字节,字,双字节等单位来表示数据。

  • 字节(Byte):8位的二进制数。如00000101B或表示成05H.

  • 字(Word):16位的二进制数,等于2字节。如1100010111010110B或表示成C5D6H。

  • 双字(Double Word):32位的二进制数,又称双精度数,等于4字节,如23456789H。

编码

  • 原码:原码将最高位作为符号位,正数为0,负数为1,其余7位作为数值位。

  • 反码:正数的反码与正数的原码一样。而求负数的反码时,符号位为1,数值位在原码的基础上求反。

  • 补码:正数的反码与正数的原码一样。而求负数的补码时,符号位为1,数值位在原码的基础上求反加1、

寄存器组

  • 数据寄存器:数据寄存器中每个寄存器又可以分为2个8位的寄存器。分别位AH、AL、BH、BL、CH、CL、DH、DL。H表示高字节(高位)寄存器、L表示低字节(低8位)寄存器。

  • 地址寄存器:地址寄存器包括指针和变址寄存器SP、BP、SI、DI四个16位寄存器。

  • 段寄存器:8086CPU有4个16位的段寄存器,分别是CS代码段寄存器、DS数据段寄存器、ES附加段寄存器、SS堆段寄存器。 控制寄存器:控制寄存器包括IP和FLAGS(又称为PSW程序状态字)两个16位寄存器,用于控制程序的执行。

2)DOS相关命令

cd\ —— 首先要用cd\退回到根目录C>下

dir —— 显示文件列表

md hb —— 建立hb子目录

cd hb —— 进入hb子目录

copy d:\dos\masm.exe c:\hb ——将D盘dos目录下的masm.exe拷贝到C盘hb目录下

copy d:\dos\link.exe c:\hb ——将D盘dos目录下的link.exe拷贝到C盘hb目录下

cd.. ——退回到上一级目录

del \hb\masm.exe ——删除hb子目录中的某文件

rb hb ——删除hb子目录(子目录中的所有文件必须先删除)

e: ——进入e盘

cls ——清屏

type ——显示文本文件内容(如 type c:\hb\abc.asm)

注意:DOS和DEBUG命令都支持不区分大小写。

3)常用DEBUG命令

R ——查看和修改寄存器

D ——查看内存单元

E ——修改内存单元

U ——反汇编,将机器指令变为汇编指令

T/P ——单步执行

G ——连续执行程序

A ——输入汇编指令

Q ——退出

二.实验报告

1)实验目的

1.练习常用的DOS指令,熟练掌握DEBUG的主要命令的用法。

2.熟悉汇编语言运行,调试环境及方法。

2)实验内容

1.用两种方法在实验楼Linux环境中进入DOS模拟环境

a.在桌面上双击 Dos emulator 图标,直接进入 DOS 图片描述

b.在桌面上双击 “Xfce 终端” 程序进入 Linux 的命令行终端 在启动的 Xfce 命令行界面中输入dosemu 进入 DOS 环境 图片描述

2.用DIR命令查看根目录下的文件 图片描述

3.用CD命令进入D盘子目录,并查看子目录中的文件 图片描述

4.进入DEBUG,用D命令查看数据段中0100H——0200H单元的内容 图片描述

5.用U命令查看代码段中0100H开始的程序 图片描述

6.用R命令查看并修改IP寄存器的值为0 图片描述

7.用E命令修改数据段5号,6号单元的内容为12,34 图片描述

8.用A命令实现Z=56+41,用T命令执行并用D命令查看结果 图片描述

9.用U命令查看刚才用A命令输入的汇编指令,它们对应的机器指令是什么 图片描述

3)实验总结

学习了DOS和DEBUG的命令和用法,以及需要多操作来达到巩固知识的目的

最新评论
暂无评论~