免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!
本次游戏没法给
内容参考于:微尘网络安全
上一个内容:2.x86游戏实战-跨进程读取血量
寄存器说明:
寄存器是处理器的一部,也就是寄存器是在处理器里面的一个东西,寄存器它是一个有限的高速的存储空间,寄存器它可以用来暂时存放指令(代码)、数据、地址,代码或数据是在内存中,当处理器执行一个代码或读取一个数据时会从内存中找到代码(一般指代码所在的内存地址)或数据然后把它们读取到寄存器中,然后处理器读取或执行寄存器的数据(代码也是一种数据),这些话有很多问题,这些问题不要去想,不要去钻牛角尖,人家就这样设计的
寄存器名字:寄存器它也是有宽度的
32位寄存器:通用寄存器
EAX、ECX、EDX、EBX、ESP、EBP、ESI、EDI
16位寄存器:对应上方32为寄存器前16位
AX、CX、DX、BX、SP、BP、SI、DI
8位寄存器:它们是对应上方寄存器的内部,比如AH和AL,它俩对应AX寄存器,AH是AX寄存器后8位,AL对应AX寄存器前8位
AH、AL、CH、CL、DH、DL、BH、BL
8位寄存器只有 AX、CX、DX、BX 它们四个有
其它的寄存器:如果现在看不懂,那么就等后面实际操作的时候看它们的使用,出了下图还有一些其它的寄存器(比如浮点数的寄存器),目前不重要所以不贴出来
各寄存器的作用:
EAX它会当做函数的返回值,比如有一行call xxxx,然后后面有一个把eax赋值给某某,这样的操作就是把eax当做返回值使用了,后面会经常看到
ECX它会当做this指针或计数器,这俩东西现在没有什么概念,所以后面用到了在说,看一眼它的使用就能懂
EDX、EBX没什么特殊的
ESP它用来记录栈顶,栈只要调用了函数就会存在,可以把栈理解成属于函数的内存空间,如果不理解看后面使用
EBP它用来记录栈底,栈只要调用了函数就会存在,可以把栈理解成属于函数的内存空间,如果不理解看后面使用
ESI和EDI也没有什么特殊的
总结:
寄存器是在处理器里面的,它是处理器里面的一个高速缓存(高速内存空间),由于它的高速性导致了寄存器不会很多,内存空间也不会很大,如果想了解更详细的,那要去学硬件方面的内容,去学 数字ic 或 模拟ic