gto250 发表于 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吗?四个字节,怎么会变成三个字节

哪位兄弟知道的话,回复一下!

pusofalse 发表于 2013-8-9 09:58:37

但是我看到的例程中,用的是RtlMoveMemory(目标,源,4),源就是C88,但是目标就成了88C000
为什么会这样,倒序的话不是880C0000吗?四个字节,怎么会变成三个字节

哪个例程?
页: [1]
查看完整版本: 关于数据在内存中存放的问题