前面我们用DEBUG调试命令时使用一些汇编指令,在用MASM进行编译时,达成的郊果完全不同的,特别需要注意 mov al,[0]这种用来读取DS:0的内存到AL中的指令在用MASM编译后生成的指令中是没有[]的,是单纯的一个值。

汇编语言基本概念(续3)_DEBUG调试

因此,可用[bx]来表示一个内存单元的偏移地址。

描述性符号(),用来表示一个内存单元或寄存器中的内容。

汇编语言基本概念(续3)_职场_02

汇编语言基本概念(续3)_MASM_03

汇编语言基本概念(续3)_DEBUG调试_04

前面我们可以通过JMP指令实现指令的跳转,也相当于可以实现循环执行功能,这里介绍一个新的指令LOOP指令,LOOP指令使用格式是LOOP 标号。

标号我们前面说过标号就是一个地址,代表一个偏移地址。

汇编语言基本概念(续3)_MASM_05

汇编语言基本概念(续3)_休闲_06

对循环指令进行调试,如果单纯用T指令的话,比较复杂。DEBUG提供了一个G和P指令,进行一次性执行。

汇编语言基本概念(续3)_职场_07