汇编教程1:如何学习汇编

时间:2022-03-08 01:00:48
想想我自己玩电脑也是不少时间了,也经常在各大论坛灌水,得到过很多人的帮助。 

但是非常遗憾的事一直都没有为别人贡献过什么,现在我有点时间所以写了几篇关于汇编的文章,我以后还会继续更新。路线是:先写点16位汇编-32位汇编-解密知识-外挂制作。希望大家关注,同时多给点意见,在下将非常感激 ,同时希望大家多多回复不要让帖子沉下去。希望多多支持 
如果大家有什么问题可以给我发Email:agan97@qq.com
我将尽全力帮助你解答问题! 
观看文章链接:http://www.aganhome.cn 

写这篇文章(我准备把他写成一个系列),我想讲述如何从零开始学汇编语言程序设计,请千万相信汇编其实是很简单的,只要自己努力一定是可以学会的。可能由于我的技术(编程和写作)也很不到家在很多方面都写的不是很好甚至是胡说八道(但愿你不会这样认为)。如果你对此有什么意见可以给我发Email:agan88@foxmail给我我将竭尽全力的回复每一封邮件同时希望大家多给我提提意见,让我把文章写的更好。。!

 

这篇文章里不会有太多技术方面的东西,我想在这章先和大家一起探讨如何学习汇编的问题,也许有些内容让你觉得我很啰唆。那是以为我为了照顾大部分的读者所以写的比较详细。。请大家多支持我,看了之后多给我意见。如果没有意外我会坚持每个礼拜发表一篇。今天写的是第一章,只是个引子,还没具体涉及到编程。

罗云彬说的好啊,学汇编就像千军万马过独木桥,能够坚持到最后的很少。这个不禁让我想起了高考啊。汇编这东西如果你真的学精通的话可以让计算机做很多别人不能够做的事情,因此很多人都想学习汇编。掌握这方面技术,对自身的提高确实有好处。你可以通过反汇编别人的程序跟踪别人的软件,了解别人的编程思路。通过了解别人的程序思路,使自己写出更加好的程序。而且写病毒,木马和外挂等等的一些软件~~~都必须用汇编才能够写的漂亮。研究汇编还有助于掌握一些系统底层知识,系统底层知识绝对是构造起大型软件的坚实基础。许多程序发展,都经历了这一锻炼过程的。 而大多数人可能认为汇编是一门高深的学问。很难学,我前几天在网上拿了个软件给我朋友用。 他问我用什么写的,我说用汇编。。他不信以为汇编根本就写不出强大复杂的软件,其实这都是老皇历了(现在的汇编其实我感觉和C差不多都是调用windows API来编程)。造成这种原因我觉得是以前在dos下面用汇编来写程序太麻烦,所以给人的感觉就成了很复杂,(以前在dos下汇编没有很多API可以调用)就将汇编神话了,造成初学者在心理上就承认了汇编很难学的”事实”其实不是这样现在其他编程语言可以做的比如C,用汇编做起来也不是很麻烦。再一方面由于学习资料比较匮乏学。初学者一般不知从何下手,由于没方向,花费了大量时间和精力,走了不少弯路。这里我就给想学汇编的指下学习方向(根据我自己的学习经历)。

在学汇编前,最好先掌握一门高级语言编程,这样再学汇编应容易些,如果你学校或者在其他地方学了C语言的学起来就比较轻松了,很多书上都是用C语言程序做范例来讲解的,如果你没有学也没有关系这里我给你推荐个视频: <<尚学堂科技java系列视频教程>>,这个教程可比那些什么什么大学跟这课本念PPT的好多了, 你或者会问我为什么学汇编要去看java的视频啊,这里我只是推荐你去看下他视频的前3章,也就算基础知识,这在所有的程序设计语言里面都适用, 看完了再学习汇编坡度就不会那么陡了。

看完视频我想再向大家介绍几本书都是中国人写的(我觉得国人计算机方面的著作就算汇编比较有出席拉) 一本是王爽写的<<汇编语言>>和罗云彬写的windows环境下32位汇编语言程序设计,这2本书在学习汇编的人心中地位都非常高现在都出了第2版了,而且网上都有电子版,google下就能找到。其他还有一些书比如: 温冬蝉,沈美明:清华大学出版社,《IBM PC 汇编语言程序设计教程》, 。【美】Kip R。Irvine 著,温玉杰等译:《Intel 汇编语言程序设计》(第四版),都是比较经典的,如果有机会可以看看!!

 

学习汇编要多动手,不要只看书和书上的例子,有条件就把例子弄到电脑上试一试,如果成功了,不要高兴,你的工作只完成了一半,把例子改一改,按你的意思,想想改了之后的结果,与上机对照一下,你会有收获的。 写汇编程序难免会出错,老一辈的人都还在讲解着dubug的使用,其实现在windows环境下的汇编调试器已经非常的完善了,我平时一般是用Rad ASM里面自带的调试器,他已经可以给我解决大部分由于编程粗心而引起的错误,还有一些是逻辑错误我一般

用ollydbg进行调试,这里我再给大家推荐个编辑器Rad ASM,这是一个非常棒的汇编IDE编程环境掌握他的使用可以让安心的写汇编程序而不用把心思在记忆复杂的一些编译指令上,我准备写篇Rad ASM的教程,但是现在还没有动笔。现在比较好的讲解Rad ASM可能是jhkdiy写的 Win32汇编开发环境介绍和RadAsm简明教程

学习汇编其实很累的,需花费大量的时间,而且经常会遇到很多的问题,资料又比较匮乏。这时你可能有点想退却,其实你不要着急,只要你认真学习,成功就在眼前。没有人是生来就什么都会的,如果你有问题,就大胆的去问你周围的人。而且现在网上也有很多的专门讨论汇编的站点比较好的应该是aogo的汇编小站和罗云彬的编程乐园,学汇编的秘诀就是勤奋+执着!记住并能做到这两点,你会变得很优秀的。

不管你学汇编是出于什么目的,如果你在学习汇编的过程中如果遇到了问题可以发邮件给我探讨,我非常的欢迎邮件是:agan88@foxmail。同时在学习汇编的时候如果突然觉得学的很痛苦,可以在看雪学院下点东西玩玩解密,培养培养下兴趣也未尝不可啊!多在机子上试试底层的东西,如bios调用,IO操作,对显卡,硬盘的控制。那样你会体会到学习汇编语言的快乐。

总之要记得想学会汇编,你需要自立自强,以及自学能力。现在开始吧……

44 个解决方案

#1


这个帖子要顶,多谢楼主。

#2


我现在就是觉得挺枯燥,正在学罗云彬写的windows环境下32位汇编语言程序设计,进度是相当的慢,而且资料少。

#3


引用 2 楼 dontbend 的回复:
我现在就是觉得挺枯燥,正在学罗云彬写的windows环境下32位汇编语言程序设计,进度是相当的慢,而且资料少。

是啊,是啊

#4


正在学习王爽的《汇编语言》

#5


顶楼上。。。
我刚开始学习。就是不喜欢动手。

#6


接分

#7


引用 4 楼 debugk 的回复:
正在学习王爽的《汇编语言》


王爽的《汇编语言》有电子版的么?不想买书,想弄个电子书和源码看看,
哥哥你能不能给我发一份啊?我的邮箱:stdxj@sina.com,多谢啦!!~~~~~

#8


再顶,学过汇编基本课程,不过感觉啥也没学会,现在重新学温冬蝉的那本。

#9


顶一下,谢谢楼主的分享精神,本人闲散时间比较多,正好打算学习汇编,给与了很大的信心,谢谢
同时也希望其它朋友能给兄弟一些帮助,谢谢
本人E-mail:wanlei1217@yahoo.com.cn

#10


正在学习王爽的《汇编语言》

#11


從入門到基本會用匯編編程最快需要多久的時間 ???

#12


lz

你发了系列没有啊!

如果有系列 可以整理后 发我邮箱去吗?

谢谢!

784350851@qq.com

#13


引用 11 楼 yuanyong1982 的回复:
從入門到基本會用匯編編程最快需要多久的時間 ???

0秒或一生

#14


阿甘 继续啊 不要停 

#15


引用 14 楼 interpb 的回复:
阿甘 继续啊 不要停



阿甘的女人常说

#16


虽然我现在在搞JAVA但也想多了解一些底程的东西,
   对于汇编我很想去试试,但不知道从哪着手,今天看到楼主的贴,我一定要去试试.
有资料的人可以发到我的邮箱252818547@qq.com;
先谢谢了.

#17


正在学习汇编...

#18


最近有打算学习下汇编,了解下!

给我很大的鼓舞!

#19


看了你的推荐,去下载王爽的汇编语言,结果没有积分。急啊。。。。

#20


正想学习下汇编,关注你~~~
顶起

#21


强烈关注中、、嘿嘿

#22


顶一下!!!

#23


顶起贴!!

本人新手+菜鸟,顺便弱弱问一句,学习汇编一开始的那些基址啊,寻址方式啊一开始学习的时候就要深刻了解吗?还是能在后面的编写程序更好体会这些难点??

希望有大虾能提拔下新手,有好的一些新手学习资料可以给我,谢谢!

本人的邮箱:wangkaisheng100@163.com

#24


顶起贴!!

本人新手+菜鸟,顺便弱弱问一句,学习汇编一开始的那些基址啊,寻址方式啊一开始学习的时候就要深刻了解吗?还是能在后面的编写程序更好体会这些难点??

希望有大虾能提拔下新手,有好的一些新手学习资料可以给我,

#25


顶起,现在才看到,唉!

#26


将要学习汇编。

#27


顶,我正想学。就是不知道怎么学

#28


看到此文,感觉自己有了很大的信心!

#29


正在学习汇编 感觉还是很难的 但是认真了 还是可以理解的

#30


写的很好  谢谢lz~~

#31


学起来真的很累的!

#32


我是新手,我会易语言,能学会汇编吗?

#33


热心人啊,谢谢了

#34


本科的时候将汇编是作为另一门科目的辅助工具学过一点,可能学习的深度不够,也可能是因为学过c语言的原因,对于基本的东西感觉不是太难啊

#35


学习了!

#36


我不是来灌水的…………嘎嘎

#37


这个帖子要顶,多谢楼主。

#38


正在学习汇编,一同努力,关注你。。。。

#39


挺好,现在正打算学习汇编,希望自己能够学会

#40


ding~~~~~~~~`

#41


引用 21 楼 zoeran 的回复:
强烈关注中、、嘿嘿

绝对支持你,阿gan

#42


多谢楼主的鼓励  几天还看了几个别人问的问题  发现自己思考的太少 仅仅只是拘泥于课本了 以后要努力坚持 

#43


在学汇编语言 王爽的 入门用它比较好 
以前学罗云彬的 入门很难

#44


看了楼主的文章,学习起来更有目标了..
    谢谢楼主分享..!!!

#1


这个帖子要顶,多谢楼主。

#2


我现在就是觉得挺枯燥,正在学罗云彬写的windows环境下32位汇编语言程序设计,进度是相当的慢,而且资料少。

#3


引用 2 楼 dontbend 的回复:
我现在就是觉得挺枯燥,正在学罗云彬写的windows环境下32位汇编语言程序设计,进度是相当的慢,而且资料少。

是啊,是啊

#4


正在学习王爽的《汇编语言》

#5


顶楼上。。。
我刚开始学习。就是不喜欢动手。

#6


接分

#7


引用 4 楼 debugk 的回复:
正在学习王爽的《汇编语言》


王爽的《汇编语言》有电子版的么?不想买书,想弄个电子书和源码看看,
哥哥你能不能给我发一份啊?我的邮箱:stdxj@sina.com,多谢啦!!~~~~~

#8


再顶,学过汇编基本课程,不过感觉啥也没学会,现在重新学温冬蝉的那本。

#9


顶一下,谢谢楼主的分享精神,本人闲散时间比较多,正好打算学习汇编,给与了很大的信心,谢谢
同时也希望其它朋友能给兄弟一些帮助,谢谢
本人E-mail:wanlei1217@yahoo.com.cn

#10


正在学习王爽的《汇编语言》

#11


從入門到基本會用匯編編程最快需要多久的時間 ???

#12


lz

你发了系列没有啊!

如果有系列 可以整理后 发我邮箱去吗?

谢谢!

784350851@qq.com

#13


引用 11 楼 yuanyong1982 的回复:
從入門到基本會用匯編編程最快需要多久的時間 ???

0秒或一生

#14


阿甘 继续啊 不要停 

#15


引用 14 楼 interpb 的回复:
阿甘 继续啊 不要停



阿甘的女人常说

#16


虽然我现在在搞JAVA但也想多了解一些底程的东西,
   对于汇编我很想去试试,但不知道从哪着手,今天看到楼主的贴,我一定要去试试.
有资料的人可以发到我的邮箱252818547@qq.com;
先谢谢了.

#17


正在学习汇编...

#18


最近有打算学习下汇编,了解下!

给我很大的鼓舞!

#19


看了你的推荐,去下载王爽的汇编语言,结果没有积分。急啊。。。。

#20


正想学习下汇编,关注你~~~
顶起

#21


强烈关注中、、嘿嘿

#22


顶一下!!!

#23


顶起贴!!

本人新手+菜鸟,顺便弱弱问一句,学习汇编一开始的那些基址啊,寻址方式啊一开始学习的时候就要深刻了解吗?还是能在后面的编写程序更好体会这些难点??

希望有大虾能提拔下新手,有好的一些新手学习资料可以给我,谢谢!

本人的邮箱:wangkaisheng100@163.com

#24


顶起贴!!

本人新手+菜鸟,顺便弱弱问一句,学习汇编一开始的那些基址啊,寻址方式啊一开始学习的时候就要深刻了解吗?还是能在后面的编写程序更好体会这些难点??

希望有大虾能提拔下新手,有好的一些新手学习资料可以给我,

#25


顶起,现在才看到,唉!

#26


将要学习汇编。

#27


顶,我正想学。就是不知道怎么学

#28


看到此文,感觉自己有了很大的信心!

#29


正在学习汇编 感觉还是很难的 但是认真了 还是可以理解的

#30


写的很好  谢谢lz~~

#31


学起来真的很累的!

#32


我是新手,我会易语言,能学会汇编吗?

#33


热心人啊,谢谢了

#34


本科的时候将汇编是作为另一门科目的辅助工具学过一点,可能学习的深度不够,也可能是因为学过c语言的原因,对于基本的东西感觉不是太难啊

#35


学习了!

#36


我不是来灌水的…………嘎嘎

#37


这个帖子要顶,多谢楼主。

#38


正在学习汇编,一同努力,关注你。。。。

#39


挺好,现在正打算学习汇编,希望自己能够学会

#40


ding~~~~~~~~`

#41


引用 21 楼 zoeran 的回复:
强烈关注中、、嘿嘿

绝对支持你,阿gan

#42


多谢楼主的鼓励  几天还看了几个别人问的问题  发现自己思考的太少 仅仅只是拘泥于课本了 以后要努力坚持 

#43


在学汇编语言 王爽的 入门用它比较好 
以前学罗云彬的 入门很难

#44


看了楼主的文章,学习起来更有目标了..
    谢谢楼主分享..!!!