许多其它编译器都附带了源代码级的调试器,,这使得用这些高级语言调试比较简单,但对于masm并没有一个集成的开发和调试环境,我们可以用TRW和Softice实现源码级的调试,这两种方法,参看Hume兄的文章:http://www.finalseraph.org/hume/asmdata/sdbg.htm
下面提供一种用VC++6.0调试的方法,好像比前两种更简单些。
方法如下:
--------
1、将我们的汇编程序编译连接成调试模式:
\masm32\bin\ml /c /coff /Cp /Zi Myprog.asm
\masm32\bin\link
/DEBUG /DEBUGTYPE:CV /subsystem:windows
myProg.obj
2、用VC++6.0建立一个同ASM程序同名字的工程:myProg,并将它编译连接
成debug模式,此时,在VC工程myProg\debug中会形成myProg.exe。
3、将第1步骤中用Masm32编译连接成的同名exe文件myProg.exe拷贝到:
VC++工程myProg\debug中,覆盖VC++形成myProg.exe
4、启动VC++6.0,打开myProg工程,build->start
debug->go,呵呵。。
进入了Masm32形成的myProg.exe,并且是源码级调试。
至此,请随心所欲的用VC调试器的强大功能,调试你的Masm32程序吧!
附:我一般都是用个批处理(L_debug.bat)一下完成:
c:\masm32\bin\ml /c /coff /Cp /Zi
Myprog.asm >Mydebug.txt
c:\masm32bin\link /DEBUG /DEBUGTYPE:CV /subsystem:windows
myProg.obj
copy .\myProg.exe VC工程\debug\myProg.exe
启动VC进行调试。。。
Spring.W
2002/11/25
- 标 题:贴个用VC++在源码级下调试MASM32汇编程序的方法。。。大家交流。。 (1千字)
- 作 者:Spring.W
- 时 间:2002-11-25 0:27:11
- 链 接:http://bbs.pediy.com