汇编语言 5.4 Debug masm对指令的不同处理

5.4

Debug 指令复习

首先复习一下Debug命令:

-r ;命令显示当前的通用寄存器情况

figure1

-t ;分步执行命令
-d ;查看目标地址的二进制码及ASC码

figure2

-e ;改写目标地址的二进制代码

figure3

-a ;从目标地址处开始添加代码

figure4

-r ;更改代码段或偏移地址指针

figure5

masm访问内存单元的方法

之前在5.3提过,编译环境下并不能直接识别Debug中的mov ax, [0]命令,会将[0]识别为数值0写入ax寄存器中。而实现masm访问内存内存单元的方法有两个:

第一种方法:

mov ax, 2000H ;这里注意必须标出H,因为masm默认10进制
mov ds, ax
mov bx, 0
mov al,[bx]

第二种方法, 指出段地址:

mov ax, 2000H
mov ds, ax
mov al, ds:[0]

语言含义:

code 含义
mov al, [0] (ax)=0
mov al, ds:[0] (al)=((ds)*16+0)
mov al, [bx] (al)=((ds)*16+(bx))
mov al, ds:[bx] (al)=((ds)*16+(bx))