2014-12-04 20 views
5

file nguồn MASM của tôi là như sau:chương trình .exe của tôi không phải là những gì tôi mong đợi

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 

tôi sử dụng chương trình MASM tạo ra một tập tin .exe mà tên qq.exe.When Tôi sử dụng debug qq.exe -u, các hướng dẫn viên như sau trong hình: picture

Tôi nhầm lẫn rằng "mov al, [0006]" hướng dẫn trong qq.asm của tôi chuyển thành "mov AL, 06" trong qq.exe. Mọi trợ giúp sẽ được đánh giá cao.

+1

Cảm ơn bạn @NobleUplift. –

Trả lời

3

[0006] được hiểu là một hằng số ngay lập tức. Bạn có thể tránh ghi đè bằng ghi đè:

mov al, ds:[0006] 
+0

Cảm ơn bạn rất nhiều @rkhb. –

+0

Cảm ơn một lần nữa, tôi đã làm sugessted của bạn và mọi thứ đều OK @rkhb. –

Các vấn đề liên quan