找回密码
 加入
搜索
查看: 8584|回复: 1

[系统综合] 关于数据在内存中存放的问题

[复制链接]
发表于 2013-8-8 22:23:03 | 显示全部楼层 |阅读模式
这两天在学习在au3中使用机器码。
看了几个P版的udf
在百度上搜索学习的时候,遇到了一个问题
数据在内存中存放,数据是倒过来的,
如:数据为0XA8A6A4A1,存放在内存中就是0XA1A4A6A8
用_RTLongPtrToBytes($iLongPtr)这个function就能实现
Func _RTLongPtrToBytes($iLongPtr)
        Return Hex(Binary($iLongPtr))
EndFunc        ;==>_RTLongPtrToBytes

但是,我遇到的问题是,有一个进程的PID是3208,转化为16进制的话是C88,用上面的函数转化就成了880C0000
但是我看到的例程中,用的是RtlMoveMemory(目标,源,4),源就是C88,但是目标就成了88C000
为什么会这样,倒序的话不是880C0000吗?四个字节,怎么会变成三个字节

哪位兄弟知道的话,回复一下!
发表于 2013-8-9 09:58:37 | 显示全部楼层
但是我看到的例程中,用的是RtlMoveMemory(目标,源,4),源就是C88,但是目标就成了88C000
为什么会这样,倒序的话不是880C0000吗?四个字节,怎么会变成三个字节


哪个例程?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 12:29 , Processed in 0.106893 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表