5.第二阶段x86游戏实战2-认识内存

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动!

本次游戏没法给

内容参考于:微尘网络安全

工具下载:

链接:https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd=6tw3

提取码:6tw3

复制这段内容后打开百度网盘手机App,操作更方便哦

上一个内容:4.第二阶段x86游戏实战2-CE加强修改移动速度(浮点数存放方式与转换)

上一个内容里使用CE把移动速度进行了修改,通过修改移动速度实现了瞬移,前面的内容肯定初步认识了CE的强大,接下来认识一下内存

首先是进制:

逆向过程中常见的是二进制和十六进制,然后十进制现实生活中常用,但是逆向过程中不怎么常用

二进制的范围是0到1两个数字

十六进制是0到f一共十五个数字,分别是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F

详细的在:2.第二阶段x86游戏实战2-认识进制、理解数据宽度和位的概念

位的概念:

计算机有32位系统和64位系统,它们的位都不一样,位是一个二进制数的单位,一位就是一个二进制数

32位:也就是有32个0或1

0000 0000 0000 0000 0000 0000 0000 0000

32位的取值范围是:这个范围指的是内存地址的范围,虽然是0-F(范围太长简称0-F)但中间很多内存地址我们没法用

0000 0000 0000 0000 0000 0000 0000 0000 - FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF

64位:也就是有64个0或1

0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000

64位的取值范围是:这个范围指的是内存地址的范围,虽然是0-F(范围太长简称0-F)但中间很多内存地址我们没法用

0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000

FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFF

然后知道范围之后,内存地址它会有一个范围(比如从内存地址0到内存地址10,这个0到10就是内存地址的范围,也叫内存空间),这个范围的最小单位是byte,byte是字节,一个字节是8个0或1组成,两个十六进制数占用一个字节,然后0-f这么大的范围用byte表示起来就很费劲,所以还有其它的单位1024个字节看做一个K,也就是一个千字节,1024个千字节看做成一个M,一个兆字节,然后1024个兆字节看做成一个G,G被称为吉字节,然后1024个G看做成一个T,T中文是太字节,其它的参考下图

然后知道取值范围和内存空间之后:

看内存地址的时候要有一幅画面,如下图,一个内存地址对应一个字节,也就是一个内存地址的空间是1个字节两个内存地址的空间是2个字节,然后也就是一个内存地址可以存放8个二进制数(或者说是8位二进制数,都是一个意思 ),两个内存地址(就是把两个内存地址看做成一个内存地址)可以存放16个二进制,也就是一个内存地址可以表达的最大的数字是FF,FF换成十进制就是255,要记住这个画面,看内存的时候这个画面很重要,在逆向的时候要根据数据宽度(字节)来找内存,比如4字节这就说明有4个内存地址,比如00000000 到 00000003它就是4字节也就是4个内存地址,但是一般CE(逆向工具)显示的时候内存地址只会显示00000000,也就是只会显示开头的地址,现在记住这个画面,后面逆向的时候带着这个画面一看就能懂了,如果没有这个画面看到内存地址和内存的数据会蒙

简化:一个内存地址里只能存放1字节数据,也就是一个内存地址对应的内存空间是1字节,也就是一个内存地址只能存放8个二进制数,多个内存地址组合起来的内存空间在逆向工具里只会显示开头的内存地址


相关推荐
Lenyiin2 小时前
《 C++ 修炼全景指南:十 》自平衡的艺术:深入了解 AVL 树的核心原理与实现
数据结构·c++·stl
GDAL2 小时前
GNU力量注入Windows:打造高效跨平台开发新纪元
服务器·windows·gnu
程序猿练习生2 小时前
C++速通LeetCode中等第5题-无重复字符的最长字串
开发语言·c++·leetcode
无名之逆2 小时前
云原生(Cloud Native)
开发语言·c++·算法·云原生·面试·职场和发展·大学期末
好蛊2 小时前
第 2 课 春晓——cout 语句
c++·算法
小徐敲java5 小时前
Windows本地制作java证书(与jeecgboot配置本地证书ssl问题)
java·windows·ssl
春蕾夏荷_7282977255 小时前
electron nsis打包windows应用程序
javascript·windows·electron·nsis
景小雨5 小时前
【数据结构与算法】排序算法之快速排序(简)
c++·算法·排序算法·快速排序
偷偷小野猪5 小时前
Windows 常用的键盘快捷键总结
windows
鸽嗷高.6 小时前
C++伟大发明--模版
开发语言·c++