我的.exe程序不是我的预期

时间:2014-12-04 15:03:31

标签: assembly windows-7 64-bit masm dosbox

我的masm源文件如下:

qq.asm

assume cs:codesegment
codesegment segment
mov ax, 0ffffh
mov ds, ax
mov al, 00ffh
mov bx, 0006h
mov [bx], al
mov al, [0006]
mov ah, 0
mov dx, 0
mov cx, 3
s: add dx, ax
loop s
mov ax, 4c00h
int 21h
codesegment ends
end

我使用masm程序生成一个名为qq.exe的.exe文件。当我使用debug qq.exe -u时,教师如下图所示:   picture

我很困惑" mov al,[0006]"我qq.asm的教练转向" mov AL,06"在qq.exe中。 任何帮助都会很感激。

1 个答案:

答案 0 :(得分:3)

[0006]被解释为直接常量。您可以通过段覆盖来避免它:

mov al, ds:[0006]