注册 登录
编程论坛 汇编论坛

新手学习汇编第一课

老学徒工 发布于 2010-09-17 23:34, 1439 次点击
好了不多说了,这是我转的以后我会把更新的都发出来的


同学们,感谢来本汇编版块学习汇编语言基础,首先我来讲下 为什么要学汇编语言基础,

要分析一个游戏程序或软件程序的数据,首先必须学会汇编是必须的,分析数据 就意味这需要看懂反汇编代码。

如果不学汇编 那你只能做些模拟按键精灵的简单[关键字内容屏蔽],要做强大高级的辅助 是必须掌握的。

那么学习汇编难么,呵呵 也许你自己去试着接触过汇编,有些同学可能觉得很难,有些学员觉得很容易,

不是有句话说来着:万事开头难嘛!凡是任何事情都是开头比较难,只要熬过开头就OK了。

那么怎么样学好汇编语言呢?那么如果你要学会汇编 就得放开思维,把那些汇编 指令 寄存器 寻址方式 都融会贯通的灵活记住!

实在记不住的就背吧 这是最古老的方法.[不推荐这方法],不过不要紧我会把我的汇编经验知识全部一课一课的发帖出来给大家学习!觉得好的话 介绍汇编朋友来学习哦

那么从这节课程开始 我们就可以来学习汇编入门第一课 寄存器,

没有学习过汇编的同学 可能不懂什么叫寄存器 呵呵 提起神来 认真学哦!

寄存器:

其实是一个存放中央处理器的临时存放数据的一个容器,寄存器是CPU内部的元件,寄存器拥有非常高的读写速度,所以在寄存器之间的数据传送非常快。

电脑的中央处理器 也就是CPUCPU的构造是非常复杂的,但我们分析游戏数据 只需要学习寄存器 汇编指令
寻址方式就可以了 毕竟我们只是用汇编分析数据 而不是汇编写程序!

寄存器分8位 16位 32位 64位寄存器组 我们必须掌握了解它们

如果大家有厌学症 那么我劝你还是放弃编程 放弃写辅助,没人是随随便便整天玩 睡觉就成功的!

那么我们先从8位寄存器组开始了解,

8位寄存器组
数据寄存器有8个 分别是AH, AL, BH,BL ,CH,CL, DH,DL
掌握技巧:记住 A B C D 分别 加上 H,L 在后面即可 [学习少不了需要技巧]
8位寄存器在CPU中能存放一个字节长的数值

16位寄存器组
16位寄存器有 4个数据寄存器分别为 AX ,BX, CX, DX
掌握技巧:记住 A B C D 分别 加上 X 就很容易记了
16位寄存器有 2个堆栈指针寄存器分别为 SP, BP
16位寄存器有 2个数据指针寄存器分别为 SI, DI
16位寄存器有 1个标准寄存器为 Flags
16位寄存器有 1个指令指针寄存器为 IP
16位寄存器有 6个数据段寄存器分别为 ES,CS,SS,DS

不过目前的软件系统 大多数都是用32位 32位程序都是直接用32位内存地址 所以16位寄存器大家稍微了解下就可以了!

那么32位寄存器是目前程序比较广泛用到的所以得掌握,

32位寄存器组

有4个数据寄存器 分别是: EAX, EBX, ECX, EDX
2个堆栈指针寄存器 ESP,EBP
2个数据指针寄存器 ESI,EDI
1个标志寄存器 EFlags
1个指令指针寄存器 EIP
还有6个数据段寄存器 ES,CS,SS,DS,FS,GS


[attachment=1269]

本节课程总结:
32位寄存器 16位寄存器 8位寄存器 都有很好的掌握了解方法 知道它们是用来干嘛的就可以了 不需要去了解它是怎么做出来的,因为我们是分析数据 不是写程序!
图片:寄存器.jpg

[local]1[/local]
16 回复
#2
Alar302010-09-19 08:32
图片用的本地的。。。
#3
wisji82010-09-19 13:33
顶一下。
#4
freeall82010-09-20 21:01
期待下一课!
#5
松小子2010-09-25 22:16
顶,好久下一课啊
#6
绝对的菜2010-09-26 10:39
说实话。。我学过汇编。。。。但这样有点过于枯燥。
#7
lijialiang2010-10-22 15:07
支持一下,写的不错,通俗易懂
#8
ycc8920092010-10-22 22:47
大概了解一下寄存器就要写代码来实现了,

还有就是刚开始学的时候dos功能调用比较重要。

这应该是最基本的吧。反正我学了两三天就是这种感觉。

各指令与寄存器之间的联系也是在写代码之中才能体会


#9
Alar302010-10-24 20:40
貌似图是用的本地的。。。
#10
你们都要疼我哦2010-10-24 21:23
楼主是3枪惊奇啊。消失中。
下一课估计在2012年秋天最后一片嫩叶被春风刮走的时候,就会如约而至。。。
万分期待。
#11
Lzzing2010-10-25 18:34
我请问下 ,汇编用什么软件编译啊
#12
bruce8882010-10-28 12:10
没有了?????????
#13
张肆我2010-10-28 13:42
顶一个?期待下节课
#14
luy182010-11-01 13:28
多谢了,只是要坚持下去,别半途而废,每一课不要间隔太长。
#15
luckyx2010-11-04 11:24
这是什么破教程,应该是通用寄存器只有AX ,BX, CX, DX ,其中AX ,BX,又可以分为两个各自独立的8位 AX 分为(AH,AL),BX(BH,BL).
#16
2010-11-05 23:41
这学期学汇编~血液很沸腾~汇编很好玩儿~
#17
delianli2010-11-21 03:03
顶一下。。。。。。。
1