是否有可能对游戏的 rom 文件进行逆向工程以获取源代码?

逆向工程 拆卸 反编译 只读存储器
2021-07-09 11:52:29

更具体地说,您能否从 rom 中获取低级代码,并将其拼凑在一起并将其翻译成高级语言?

1个回答

代码是由编译程序/汇编完全丢弃并且不在ROM本任何地方(通过事故除外)。

但是,您可以将低级机器代码转换为高级语言。这个过程称为反编译,虽然它可能既乏味又困难,但有可能想出与二进制代码具有相同功能的高级代码。请注意,这不会为您提供代码,而只是等效的代码例如,函数或变量名称之类的信息对于 CPU 来说不是必需的,因此会被完全丢弃,除非您选择生成调试信息,这在已发布的游戏中很少发生。

关于机器码反编译的困难,请参阅为什么机器码反编译器的能力不如 CLR 和 JVM 的能力?