中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 看雪学院专区 > Win32/Win64编程
使用VC6调试器源码级调试win32汇编程序
作者:hejiwen 时间:2006-12-15 15:09 出处:pediy.com 责编:月夜寒箫
              摘要:使用VC6调试器源码级调试win32汇编程序
首先声明:本人是菜鸟,以下是我在使用中的心得,请不要笑话我^_^

                使用VC6调试器源码级调试win32汇编程序

   本人拙笨,如有错误请批评指正,或有更好的方法或者技巧,欢迎互相交流。hejiwen2001@sohu.com。
  
   使用一个好的调试器无疑对学习win32汇编是至关重要的,本人更偏爱VC的强大调试环境,能否用VC调试器调试哪,于是从网上搜搜,找到一篇Spring.W的文章《贴个用VC++在源码级下调试MASM32汇编程序的方法。。。大家交流。。》,此文就是在此基础上的改进,好像效率更高耶。

编程环境:VC6.0,Masm32v8

方法如下:
1、使用VC6新建一个空工程test(win32 console,win32 application等均可)。
2、把汇编工程中的文件拷至新建工程目录下(hello.asm,makefile),并把这些文件加入工程中管理。
3、配置IDE:
(1)、tools/customize…/tools中添加一个工具nmake。在menu contens中添加一项nmake,Command中填入:nmake.exe,Initial Directory中填入: $(WkspDir),选中use output window。这样就在tools菜单下出现了一个新的菜单项nmake。可以把这个菜单项添加到工具栏中。
(2)、tools/option…/editor在save option中选中save befor running tools。
4、制作makefile文件:

EXE = test.exe    #指定输出文件
OBJS = hello.obj    #需要的目标文件

LINK_FLAG = /subsystem:windows /DEBUG /OUT:debug\test.exe   #连接选项        
#注: (1)/DEBUG必须存在 。
#(2)/OUT:debug\test.exe输出可执行文件名要与VC建立的工程名一致。
#(3)/subsystem:windows:如果是控制台程序,这里需要改为/subsystem:console

ML_FLAG = /c /coff /Zi   #编译选项         
#注: /Zi必须存在

$(EXE): $(OBJS)
   Link $(LINK_FLAG) $(OBJS)
.asm.obj:
   ml $(ML_FLAG) $<
5、点击菜单项tools/nmake,调用masm32中的ml,link进行编译连接程序。

至此就可以使用VC调试器源码级调试汇编程序了,可以设置断点,察看变量、内存、寄存器等,nmake出现语法错误时可以双击output window中的错误行定位到程序中的指定行,改代码时别忘了要用nmake编译。
注:变量最好不要以@开头定义,比如@num,这样的变量名无法再vc下察看。

参考:
http://www.pediy.com/bbshtml/bbs5/pediy50355.htm  作者:Spring.W
http://bbs.pediy.com/showthread.php?threadid=12067 作者:Spring.W
http://www.aogosoft.com/bbs/mixpage.asp?mode=viewoktext&fileid=123 作者:crige
http://asm.yeah.net 《Windows环境下32位汇编语言程序设计》pdf及代码 作者:罗云彬
附件:代码及配置图片。
                                    2005/6/2


关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有