Menu

汇编语言实验1_debug命令

post on 10 Apr 2025 about 1228words require 5min
CC BY 4.0 (除特别声明或转载文章外)
如果这篇博客帮助到你,可以请我喝一杯咖啡~

2025-04-10 汇编实验1:利用DEBUG熟悉常用指令的使用

实验目的

熟悉DEBUG中的常用调试命令(如R、D、E、T、A、G、P等),通过实验加深对各种寻址方式的理解;能够熟练使用DEBUG中的命令对指令进行反汇编,观察并了解机器代码。

实验题

任务一:设置寄存器和存储单元

通过DEBUG命令对寄存器和存储单元进行设置,使其满足以下条件:

寄存器/存储地址
(DS) 2000H
(BX) 0100H
(SI) 0002H
(BP) 0200H
(SS) 2300H
(20100) 12H
(20101) 34H
(20102) 56H
(20103) 78H
(21200) 2AH
(21201) 4CH
(21202) B7H
(21203) 65H
(23204) 88H
(23205) 99H

任务二:执行指令并观察结果

分别输入下列指令,并单步执行(T),观察执行结果并截图。说明每条指令执行完成后AX寄存器的内容。

(1) MOV AX, 1200H

源操作数为立即寻址方式

  • (AX) = 1200H

t = 0

  • AX = 1200H
  • BX = 0100H
  • CX = 0009H
  • DX = 0000H
  • SP = 0000H
  • BP = 0200H
  • SI = 0002H
  • DI = 0000H
  • DS = 2000H
  • ES = 0760H
  • SS = 2300H
  • CS = 0770H
  • IP = 0003H
  • 标志位:NU UP EI PL NZ NA PO NC

17444568124471744456812290.png

(2) MOV AX, BX

源操作数为寄存器寻址方式

  • (BX) = 0100H

17444568464441744456846383.png 17444568554431744456855020.png

(3) MOV AX, [1200H]

源操作数为直接寻址方式

  • ([1200H]) = (21200H) = 4C2AH

(4) MOV AX, [BX]

源操作数为寄存器间接寻址方式

  • ([BX]) = (20100H) = 1234H

17444568624421744456862198.png 17444568884441744456887465.png

(5) MOV AX, 1100[BX]

源操作数为基址变址加偏移地址寻址方式

  • (1100[BX]) = (21202H) = 65B7H

17444569014431744456901288.png

(6) MOV AX, [BX][SI]

源操作数为基址变址加偏移地址寻址方式

  • ([BX][SI]) = (20102H) = 56H78H

AX = 7856H BX = 0100H CX = 0009H DX = 0000H SP = 0000H BP = 0200H SI = 0002H DI = 0000H DS = 2000H ES = 0760H SS = 2300H CS = 0770H IP = 0010H 标志位:NU UP EI PL NZ NA PO NC

(7) MOV AX, 1100[BX][SI]

源操作数为基址变址加偏移地址寻址方式

  • (1100[BX][SI]) = (21202H) = 65B7H

17444569444441744456943836.png 17444569624431744456961758.png

(8) MOV AX, [BP+SI+04]

源操作数为基址变址加偏移地址寻址方式

  • ([BP+SI+04]) = (20104H) = 0000H

17444569764471744456975814.png

实验报告

总结操作步骤及各种寻址方式,记录调试结果。

任务一运行结果

使用r+命令给寄存器赋值:

  • 17444569874441744456987333.png

使用f命令给20100到20103赋值:

  • 17444570054451744457004736.png

使用f命令给21200到21203赋值:

  • 17444570193821744457017476.png

使用f命令给23204到23205赋值:

  • ![未提供具体图片链接,请自行补充]

任务二

使用a命令给代码段添加汇编代码,并使用u命令反汇编代码以检查其正确性。

  • 17444570314451744457031389.png

使用t命令单步运行指令:

  • 17444570454481744457044523.png
Loading comments...