我有一个Intel程序集x86(16位版本)汇编代码,如下所示,它显示消息正常。使用平面汇编程序在Win-7 32位上进行汇编。Intel x86汇编代码行为问题
ORG 100h
USE16
mov ah, 09
mov dx, message
jmp Displayit ;unconditional jump
mov ah,01
int 21h
mov ah,4ch
int 21h
Displayit:
int 21h
message db 'Testing assembly jump instruction', 0Ah, '$'
如果我移动邮件的字符串定义(在下面的代码),一开始,它不打印字符串?是什么原因?
此外,虽然我有指令
mov ah, 01, int 21h
保持输出命令提示/控制台关闭,但它不起作用。在我看到信息被打印之前,控制台才关闭?
。
ORG 100h
USE16
message db 'Testing assembly jump instruction', 0Ah, '$'
mov ah, 09
mov dx, message
jmp Displayit ;unconditional jump
mov ah,01
int 21h
mov ah,4ch
int 21h
Displayit:
int 21h
在这两种情况下,代码执行的第一条指令是什么?为什么? 'mov ah,01','int 21h'什么时候执行? –
我想这会是mov啊,09不是吗? – goldenmean
另外,即使我将Mov ah,01代码放在Displayit:标签中,控制台也会关闭而不用等待它。只有当消息不是在开始处,而是在某处下降时,字符串才会被打印。奇怪! – goldenmean