注册 登录
编程论坛 汇编论坛

求救 16进制问题 请高人指点

zbs520 发布于 2008-10-20 00:47, 1481 次点击
现说谢谢了~我在修改一款游戏 遇到困难了 在我知道 结果的时候 不知道他们之间是怎么转换的

请大家帮忙 以下例子


  我是用UE打开的文件 16进制显示的  不知道 在UE 里显示的 2a 04 如何换算与 数字0458 相关联
也就是说 2a 04 (04 2a) = 0458 ( 458 )
         2b 04 (04 2b) = 0459 ( 459 )
         2c 04 (04 2c) = 0460 ( 460 )
他们是通过几进制 转换成 几进制得出来的数
我用16进制 转成10进制但是 都不是 我不知道042a 如何得出458的
或者说 2a04 如何得出 0458 的
这些 结果是有逻辑的 但是我就是找不到怎么得出的结果
像 042a =458
   042b =459
   045c =460
   0403 =448
   040b =453
根据这些逻辑 我实在找不到 怎么转的
就跟 A ( )X=C 这道题 要添加减乘除号  A 是16进制显示的 X是未知数  C 就是一个文件夹的数字编号也就是ID 应该算是10进制的吧
不知道16进制的数 能不能在乘与 16了
能的话给我个工具 谢谢
我拿那个 0403= 448 来说 是用 04不变 03乘 16得48  也不知道这么对不  希望大家帮我解决了这个问题 谢谢了~~


只有本站会员才能查看附件,请 登录
只有本站会员才能查看附件,请 登录
6 回复
#2
zbs5202008-10-20 00:50
补充下 UE 里的字节 0b 04 就是对应 客户端文件里的0453文件夹 这个是肯定的~
#3
cnhanxiao2008-10-20 01:36
先了解Intel处理器都是低址结尾就明白了。
存储可以是字节,可以是字,可以是双字、四字等。所以要从程序角度来分析。

比如某地址处程序存放的字:0a 05——读取的肯定是 050ah=1290
但是要是双字:08 07 0a 05——读取的就是:050a0708h=84543240

本论坛https://bbs.bccn.net/thread-237875-1-1.html 10楼我的帖子估计对你有所帮助

[[it] 本帖最后由 cnhanxiao 于 2008-10-20 01:39 编辑 [/it]]
#4
你们都要疼我哦2008-10-20 02:43
楼上没明白楼主意思.   

既然用UE,楼主就肯定明白这些基础的大端小端的东西.而且楼主对数据存放顺序的理解也是正确的.

楼主的意思是想知道数据逻辑关系而不是进制转换间的关系.

分析这样问题,光靠UE是不行的,因为UE只是显示磁盘文件内容.
如果程序没有什么反调试手段的话,可以动态加载调试,看看是怎么处理那些数据的.也可以反汇编查看相关地址里的数据.
#5
zbs5202008-10-21 11:39
你们的回答都不错 但是我是菜鸟啊
我对编程 方面一点不懂 我只想 找个最简单的方法 告诉我怎么做能得出 那个结果
我又新的发现 那个04 2a   04对应的是 04文件  那2a 是怎么对应得出 04文件夹里的458ID的

谢谢大家了 教我个2岁 就能会的 就想知道怎么换算 或者怎么做才能得 那个结果
例如 我给你个 在UE里的 字节 53 03 他的结果是什么
只有本站会员才能查看附件,请 登录

或者我给你个 在游戏客户端里的文件 MAGic3.PAK 里的366文件夹 对应在UE打开文件里的 多少字节
只有本站会员才能查看附件,请 登录

这个图像 我肯定 在游戏里是对的 那个magic3.PAK 里的366文件夹里都是图片 而他对应的 就是补丁文件 用UE打开的文件 也就是 4位字节 53 03  这里用的应该是反汇编

我的目的是 找到客户端文件MAGIC4。pak里的 0410 ID文件夹  UE打开的是补丁文件 .OBJ 我要在UE里加上这个ID 游戏里才能 出现这组 图片效果  但是我要加那个字节啊 不知道那个ID 0410 怎么转成那个位置的字节   这个字节我知道 但是不知道怎么来的 A9 04 就是UE里显示的
请大家帮忙 谢谢了 我可是个菜鸟啊~~加我QQ 也行 87642814  十分感谢~!
#6
zbs5202008-10-22 00:38
帮忙啊 谢谢了 版主@@@@@
#7
zbs5202008-10-24 01:06
求救啊
高手那 帮忙啊
1