最近特别痴迷汇编,但.不知如何构建一个汇编实验环境,在“狗狗”搜了一下,看到关于此方面的好文章,为了便已便人,故摘录如下(在此先对作者表示深深的谢意):
作者:jhkdiy
邮件:
jhkdiy_gzb@21cn.net
主页: http://jhkdiy.icpcn.com
日期:2005-9-25
现在很多朋友都在学习汇编语言,一方面汇编语言是大学计算机课程的必修课,另一方面则是为了从其它语言转到汇编语言来,无论什么原因,我认为学习汇编语言是件很有趣的事,学习它不但可以深入了解编程语言的内部表现,也是进一步了解操作系统的途径。可是很多朋友不知道汇编语言也可以开发基于Windows的窗口程序,现在64位CPU都已经在应用了,而在学校学的汇编还是十年前的8086/8088汇编语言,不但是基于Dos环境的16位汇编语言,而且用于开发程序的MASM也是不支持32位的。所以很多朋友的感受是在学校学了汇编等于没学,因为学到的知识在Windows平台上根本用不上或不知如何去用。
有部分朋友原来学过其它语言,如VB、Delphi、C++等等,随着学习的深入而想学习汇编语言,因为学习加解密和逆向工程汇编是必学的语言。而且如果是追求程序的高效和灵活的话汇编更是不二之选。
学习汇编语言的基础不难,难的是怎么用的问题,如何能在Windows环境下用汇编语言解决一些实际的应用问题正是很多朋友想了解的知识。这里有必要提一下Win32汇编的编程方式,所谓的Win32Asm就是利用汇编语言来直接调用Windows系统提供的API函数,其中不加任何限制和封装。而现在很多语言都或多或少地对API函数进行了封装,诸如我们熟悉的VC中的MFC就把很多API函数封装成类的成员函数,VB就封装得更厉害了。如果你已经有使用API函数的经验,如果你已经有汇编语言的基础,那么你进入Win32Asm只是换个环境而已,没有其它的路障在你面前。那么究竟如何在已有汇编基础的情况下学习Windows环境的编程呢?有这方面的文章或资料吗?可以说很少!但都是精品,Win32汇编界公认的入门经典是Iczelion的Win32汇编教程,网上同时有它的英文版和中文翻译版下载,如果找不到的话给个邮件给我。另外一个就是国内的罗云彬编著的《Windows环境下32位汇编语言程序设计》网上也有该书的pdf文件下载。可是两种教程都没有介绍在Windows环境下的汇编IDE使用,罗云彬的书依然建议用makefile方式来手工编译程序,而源代码的编辑则用editplus来做。老实说,当一个人已经熟悉了一种环境后在另一个环境下总会有所比较,而比较的结果是:用汇编开发程序还是这么麻烦,我已经习惯了VB、VC等Windows环境下的集成开发环境,一下子要自己整合编辑、编译、连接、运行、调试等的工具确实是一个不好的开端。难道就没有一个类似于Vb、VC的汇编集成开发环境吗?还是那句:很少,但都是精品!最多人使用的莫过于RadAsm了,最新版本是RadASM 2.2.0.3d (09-14-2005),整个程序很像我们熟知的VB开发界面,一样可以像VC那样用向导方式建立一个工程。关键字着色、自动完成API函数等,总之在常用开发环境下有的功能它都有,没有的它也有。它支持多种汇编编译器,目前支持MASM、TASM、NASM、FASM、GoAsm、HLA(High Level Assembly);还支持多国语言,够多了吧。另外一个受人瞩目的汇编IDE是WinAsm,最新的版本是WinAsm V5.0.4.142 ,它同样的是一个出色的汇编开发环境,老实说,我个人感觉它和Radasm并没有很大的区别,无论是开发界面和功能上都大同小异。或许造成用户群的多少只是因为个人喜好不同而造成的。遗憾的是它目前只有英文版,只支持MASM。还有一个小有名气的是Easy Code,最新的版本是Easy Code 1.00.0.0029(9-23-2005),这个开发环境好像是VB环境的近亲,因为第一次看到它的时候以为打开了Vb,实在太像了。而且它对窗口和控件做过了一定的封装,如我们知道双击在VB窗口中建立的按钮可以直接跳到该按钮的代码编辑行,而这个Easy Code也有同样的功能。
前面说的都是国外的IDE,国内有没有呢?有,我目前知道的只有AogoSoft的MASMPLUS,相信很多朋友都知道http://www.aogosoft.com/,这个国内以纯汇编讨论的编程站点汇集了很多的汇编高手,这个MasmPlus正是站长Aogo大哥写的。这个小型的masmplus颇为简洁,但确有很强大的编辑功能,由于还处于开发中,目前只有测试版,有兴趣的朋友可以到上面的主页里下载试试。
值得一提的是,上面介绍的所有开发环境都是免费的,让我们真诚地对这些无私奉献的程序英雄们说声谢谢吧。那我们到那里下载这些IDE呢?呵呵,这正是这一段的内容:
RadASM 2.2.0.3d (09-14-2005)
当前下载地址:http://www.radasm.com/RadASM2000/RadASM.zip
RadAsm语言包:http://www.radasm.com/RadASM2000/RadLNG.zip
帮助文件: http://www.radasm.com/RadASM2000/RAHelp.zip
主页地址: http://www.radasm.com/
WinAsm Studio v5.0.4 full
当前下载地址:
http://www.winasm.net/index.php?ind=downloads&op=download_file&ide=90&file=WinAsmFull504.zip
主页地址:http://www.winasm.net/index.php
EasyCode
当前下载地址:
http://easycoder.org/English/Download/EasyCode10029Eng.zip
主页地址:http://www.easycoder.org/
MASMPlus
当前下载地址:http://www.aogosoft.com/masmplus/masmplus.rar
主页地址: http://www.aogosoft.com
少不了最新的MASM32(Version 8.2)下载地址:
http://webhost.ccp.com/~win32/hutch/m32v82r.zip http://website.masmforum.com//masm32/m32v82r.zip http://www.masm32.scrollsforum.com/m32v82r.zip http://ghirai.com/hutch/mmi.html http://www.hostileencounter.com/m32v82r.zip
主页地址:
http://www.masm32.com/
Iczelion的和罗云彬的Win32汇编教程:(我自己的空间)
http://jhkdiy.go3.icpcn.com/file/masm.chm
再加一个汇编语言教程:
http://jhkdiy.go3.icpcn.com/file/huibian.chm
RadAsm IDE简介