实验一 查看CPU和内存、用机器指令和汇编指令编程

首先打开 DOSBox0.74 进行模拟80X86汇编环境

20201004193559

然后敲入 debug 命令进行调试:

20201004193842

1、R 命令

1.1、使用 R 命令查看 CPU 中各个寄存器中的内容

20201004194006

1.2、用 R 命令修改寄存器 AX 中的内容

20201004194233

1.3、用 R 命令修改 CS 和 IP 中的内容

20201004194617

2、D 命令

2.1、用 D 命令查看内存 1000:0 处的内容

20201004194804

这里的 "1000:0" 是 “段地址:偏移地址” 的格式,即查看内存 10000H 处的内容。这里列出的是从指定内存开始的 128 个内存单元中的内容。

2.2、查看 1000:9 处的内容

20201004195054

2.3、列出 Debug 预设的地址处的内容

20201004195224

2.4、列出后续的内容

在使用 “d 段地址:偏移地址” 之后,接着使用 D 命令,可列出后续的内容:

20201004195506

2.5、查看 1000:0 ~ 1000:9 单元中的内容

20201004195618

2.6、用三种不同的段地址和偏移地址查看同一个物理地址中的内容

20201004195845

3、E 命令

3.1、用 E 命令修改从 1000:0 开始的 10 个单元的内容

20201004200213

3.2、用 E 命令修改从 1000:10 开始的 4 个单元的内容

20201004200533

操作步骤:

  1. 输入 e 1000:10 ,按 Enter 键。
  2. Debug 显示起始地址 1000:0010,和第一单元(即 1000:0010 单元)的原始内容,然后光标停在 “.” 的后面提示输入想要写入的数据,此时可以有两个选择:其一为输入数据,然后按空格键,即用输入的数据改写当前的内存单元;其二为不输入数据,直接按空格键,则不对当前内存单元进行改写。
  3. 当前单元处理完成后,Debug 将接着显示下一个内存单元的原始内容,并提示进行修改。
  4. 所有希望改写的内存单元改写完毕后,按 Enter 键,E 命令操作结束。

3.3、用 E 命令向内存中写入字符

20201004201328

3.4、用 E 命令向内存中写入字符串

20201004201549

3.5、用 E 命令将机器码写入内存

20201004201745

机器码 对应的汇编指令
b80100 mov ax,0001
b90200 mov cx,0002
01c8 add ax,cx

4、U 命令

4.1、用 U 命令将内存单元中的内容翻译为汇编指令显示

20201004202215

5、T 命令

5.1、使用 T 命令执行 CS:IP 指向的命令

20201004202436

5.2、用 T 命令继续执行

20201004202534

6、A 命令

6.1、用 A 命令向从 1000:0 开始的内存单元中写入指令

20201004202759

6.2、从一个预设的地址开始输入指令

20201004202916

:退出 debug 模式的命令是 q 命令

20201004194447

原文地址:https://www.cnblogs.com/fanlumaster/p/13768280.html