• 标 题:贴个用VC++在源码级下调试MASM32汇编程序的方法。。。大家交流。。 (1千字)
  • 作 者:Spring.W
  • 时 间:2002-11-25 0:27:11
  • 链 接:http://bbs.pediy.com

许多其它编译器都附带了源代码级的调试器,,这使得用这些高级语言调试比较简单,但对于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