易语言之前提必知的一些基础语言

易语言之前提必知的一些基础语言

ID:32427188

大小:32.00 KB

页数:6页

时间:2019-02-04

易语言之前提必知的一些基础语言_第1页
易语言之前提必知的一些基础语言_第2页
易语言之前提必知的一些基础语言_第3页
易语言之前提必知的一些基础语言_第4页
易语言之前提必知的一些基础语言_第5页
资源描述:

《易语言之前提必知的一些基础语言》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、如果只知道易语言,那只能编一点小程序。但是如果要写网游辅助,那就必须先会读内存中的血蓝,物址等等~查它们的工具就是CE了。以下是关于CE的一些基本知识。明天CE之每天一篇。。。将教大家查找自己的背包地址。如果有超过十个回复的话~~如果有些人没有锁贴的话~~~原文由DarkByte(CE作者)发表,Smidge204补充大多数人认为汇编很难学,但事实上它很简单,在这个教程我将试图解释一些基本的汇编语言如何工作。处理器以内存和寄存器来工作,寄存器类似内存但比内存快得多,寄存器有EAX,EBX,ECX,EDX,ESP,EBP,ESI,E

2、DI,还有段寄存器,(还有一个叫EIP,这个是指令指针,它指示下一条将要执行的指令)一些例子:subebx,eax(ebx=00000005,eax=00000002)让我们把它分成更基本的成分:操作码,参数1,参数2操作码是一个指令告诉处理器做什么,在这个例子里是让储存在EBX里面的数值,减少储存在EAX中的这个数。在这个例子中EBX=5而EAX=2,所以这个指令执行后EBX的值应该是3(5-2)还有请注意:当你看到操作码和两个参数的时候,第一个参数是指令的目标,而第二个参数则是来源。sub[esi+13],ebx(ebx=00

3、000003,esi=008AB100)在这个例子里,你可看到第一个参数有一个方括号,这意思是说用一个内存的位置来代替寄存器,内存的位置由方括号中的内容指定,在这个例子里是esi+13(注意13是十六进制数)因为ESI=008AB100,所以所指的地址是008AB113。这条指令让保存在008AB113这个地址上的数值,减少保存在EBX上的数量,即3。如果在008AB113位置上的数值是100,那么执行这个指令后,008AB113位置上的数值将会是97。sub[esi+13],63(esi=008AB100)这个几乎和上一个完全一

4、样,只不过是用直接数值取代寄存器。记住了63实际上是99,因为指令中写的永远都是十六进制。假设008AB113这个位置上的数值是100(用十六进制表示是64),执行这个指令后008AB113位置上的数值将会是1(100-99)。subebx,[esi+13](ebx=00000064esi=008ab100)这个指令让储存在EBX上的数值,减少在008AB113里面储存的数值(ESI+13=008AB100+13=008AB113,你没忘记吧)上面直到这里都只使用SUB这个指令,但处理器能理解的指令其实很多很多。让我们来看看MOV

5、这个最常用的指令吧,虽然它的名字是MOVE(移动)数据,但它其实只是把数据从一个位置复制到另一个位置罢了。MOV工作起来也和SUB完全一样,第一个参数是目标,第二个参数是来源。举例:MOVeax,ebx(eax=5,ebx=12)把储存在EBX的数值复制到EAX里面所以,如果这条指令被执行,那么EAX里面的数值会是12(并且EBX里面仍然是12)MOV[edi+16],eax(eax=00000064,edi=008cd200)这个指令把保存在EAX里面的数值(十六进制数64,也即十进制的100)放到EDI+16(008CD200

6、+16=008CD216)这个位置。所以执行这个指令之后,储存在008CD216这个位置上的数值将会是100(十六进制数64)就象你看到的,它工作起来也和SUB指令一样。然后,还有一些指令只有一个参数,例如INC和DEC。举例:inceax:EAX中的数值加1dececx:ECX中的数值减1dec[ebp]:将EBP所指的内存地址处的数值减1现在我只讲32位寄存器(EAX,EBX,ECX......),但其实还有16位寄存器和8位寄存器可以使用的,16位寄存器是:AX,BX,CX,DX,SP,BP,SI,DI;8位寄存器是:AH,

7、AL,BH,BL,CH,CL,DH,DL。请注意当你改变了AH或AL寄存器时你也同时改变了AX寄存器,并且如果你改变了AX寄存器你也同时改变了EAX,其他的BL+BH+BX+EBX,CH+CL+CX+ECX,DH+DL+DX+EDX也一样。(CCB注:以AX为例,AX是一个十六位寄存器,而AH是八位寄存器,它是指AX寄存器的高八位,而AL则是指AX的低八位。而32位的CPU增加了32位的寄存器,即EAX是在AX的基础上再加十六位,举例说明:如果EAX的数值是(二进制):EAX0000000000000000110100010010

8、0111那么AX1101000100100111而AH,AL则分别是:AH11010001AL00100111即AX包含AH和AL,而EAX包含AX,当然也包含AH和AL,不过WINDOWS上的程序一般比较少使用8位和16位寄存器)你可以几乎完全一

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。