这个指令怎么用??
assume cs:code
code segment
start: mov ax,1000h
mov ax,bx
int 3
mov ax,4c00h
int 21h
code ends
end start
不是单步中断吗,怎么程序执行起来没什么反应??
------解决方案--------------------------------------------------------
C:\MASM611\BIN>ml a.asm
Microsoft (R) Macro Assembler Version 6.11
Copyright (C) Microsoft Corp 1981-1993. All rights reserved.
Assembling: a.asm
Microsoft (R) Segmented Executable Linker Version 5.31.009 Jul 13 1992
Copyright (C) Microsoft Corp 1984-1992. All rights reserved.
Object Modules [.obj]: a.obj
Run File [a.exe]: "a.exe"
List File [nul.map]: NUL
Libraries [.lib]:
Definitions File [nul.def]:
LINK : warning L4021: no stack segment
C:\MASM611\BIN>debug a.exe
-g
AX=0000 BX=0000 CX=000B DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=17B4 ES=17B4 SS=17C4 CS=17C4 IP=0005 NV UP EI PL NZ NA PO NC
17C4:0005 CC INT 3
-
正常在v8086中运行时,int3处理程序发挥作用了吗?楼主自己试试。
你再实模式下运行这段代码了吗?结果呢?
------解决方案--------------------------------------------------------
因为你单步进入int 3的异常处理程序中了