欢迎来到天天文库
浏览记录
ID:12893181
大小:407.50 KB
页数:0页
时间:2018-07-19
《如何用vc.集成 开发环境来构建masm汇编的编程环境》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、如何用VC6.0集成开发环境来构建MASM32汇编的编程环境(原创)作者:maxzhou88(周哥) 开发高性能的程序少不了用汇编编程,限于C语言中内嵌汇编语言的局限(如在C代码中混合汇编语言编程时,很难实现跳表),一些代码必须书写在独立的汇编源文件中。遗憾的是,在调试时,只能看到裸的汇编码,而不能到懂标号,变量等,现在能这样C与ASM混合编程就方便多了。编程环境:VC6.0,Masm32v8优点:[1]使用VC6.0集成开发环境可以利用其强大的Debug功能来实现源代码级调试(SourceCodeDebug),(看变量、设置断点、查看MASM32的高级命
2、令展开......)[2]使用VC6.0的资源编辑器,可视化编辑资源。[3]实现C/C++与ASM的混合编程。[4]在窗口下比在CMD下工作符合一般人的习惯,再也不需要写makefile文件或xxx.bat文件了。方法:[1]安装VC6.0,这个我就说了,大家都会的哦,一般我将它安装在C:ProgramFilesMicrosoftVisualStudio。[2]安装MASMv8.exe,一般我将它安装在D:MASM32下。[3]将Win32ASM(masm32)中的ml.exe和ml.err拷贝到C:ProgramFilesMicrosoftVisu
3、alStudioVC98Bin[4]使用VC6.0新建一个空工程,如:hello(类型为:win32console、win32application、DLL等均可)。[5]把汇编和资源文件拷至新建工程目录下(hello.asm,hello.rc),并把这些文件加入工程中(将*.asm添加到SourceFiles,将*.rc添加到ResourceFiles)。[6]配置IDE(这就配置一次就搞定):在VC的菜单tools/option…/paths(includefiles)中添加一个路径d:MASM32INCLUDE[7]配置工程(每个工程都要这样配置
4、):打开工程设置(projectsettings),点击*.asm文件选择(CustomBuild), 命令中加上:ml/c/coff/Zi/Fo$(TargetDir)$(InputName).obj$(InputPath) 输出中加上:$(TargetDir)$(InputName).obj 注意选Settingsfor:Win32Debug和Win32release,将上面的两条都加上,而且每个*.A
5、SM文件(如有多个ASM时)都这样设置。[8]点击VC的编译(build)就可以运行了哦。 至此就可以使用VC调试器源码级调试汇编程序了,可以设置断点,察看变量、内存、寄存器等,masm出现语法错误时可以双击outputwindow中的错误行定位到程序中的指定行。 为了不在debug和release目录中产生超大的预编译头文件xxxx.pch,在工程设置(projectsettings)中的C/C++->PrecompiledHeaders的选项上选择"不使用预编译头",其实就现在的电脑而言,不使用预编译头也能快速地编译C代码的哦. 资源编译/编辑
6、器蛮好用的.只是还有个问题我也没有搞懂:VC6.0的资源编译/编辑器不支持16进制的资源ID,非要用10进制的,我是用两种方法解决的:一是将资源文件*.rc中的ID改成10进制,这样就可以编辑修改了;二是直接用老罗书中的rc文件导入,但在VC6.0中不要打开编辑它就可以了.有人能告诉我VC6.0的资源编辑器用16进制ID的方法嘛,可能这很简单,我没有去深究罢了.有空来踩踩我的空间哦:http://hi.baidu.com/maxzhou88该文在我的百度空间:http://hi.baidu.com/maxzhou88/blog/item/7c7b4b09181
7、ce186d1581b8f.htmlWin32C++/ASM混合编程的Demo下载:http://maxzhou88.ys168.com/pc 我在学老罗的MASM32程序时都是象这样在VC6.0的集成环境下工作的,他书中的例子我基本都试验过,比在DOS(CMD窗口)下方便多了,也不要什么makefile文件,建个proj项目就搞定,最重要的是用VC的资源编辑器来编辑资源比原先手工编辑方便多了,如果有什么问题欢迎大家交流哦! 周哥(maxzhou
8、88)写于2009-01-21为了方便
此文档下载收益归作者所有