请教:int 3指令的用法

icbm 2006-03-18 04:29:44
据说int 3指令是专门用于调试用的。著名的Softice就是利用int 3中断对软件进行调试的。

请问int 3指令如何使用?在自己写的程序如何使用int 3指令来调试?

请各位大侠介绍一下。如有可能,请提供一些参考资、来源。谢谢。
...全文
302 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
因为你没有设置自己的int 3处理例程,DOS默认的就是IRET,当然没作用了。
fhb13 2006-03-18
  • 打赏
  • 举报
回复
试试下面这段代码可以不可以
sti
int 3
如果还是不行就放弃吧
icbm 2006-03-18
  • 打赏
  • 举报
回复
那请问,在什么时候int 3才生效呢?
fhb13 2006-03-18
  • 打赏
  • 举报
回复
DOS执行程序的时候是忽略INT 3的
设的再多也白嗒
icbm 2006-03-18
  • 打赏
  • 举报
回复

CodeSeg segment
assume cs: CodeSeg, ds: CodeSeg
start:
int 3
mov ax, CodeSeg
mov ds, ax

mov dx, offset Msg
mov ah, 09h
int 21h

mov ax,4c00h
int 21h ;第12条指令

Msg db 'Hello!',0dh,0ah, '$'

CodeSeg ends
end start

能不能讲得具体点。比较象上面这个程序,我编译后,在dos下运行,直接就输出字符串了。并没有停下来啊。还有,你说的单步调试功能,是否需要一个调试器?

本人比较菜,问些傻问题,敬请谅解。:)
fhb13 2006-03-18
  • 打赏
  • 举报
回复
INT 3 功能是在程序中设置一个断电
程序运行到INT 3自动停下来
后可以用单步调试功能一步一步的调下去

21,458

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧