几年前我写了一个很好的 ARM 汇编程序,多年来它在它设计的 ARM 嵌入式系统上做得很好。现在,是时候将它移植到非 ARM 系统了,我想知道是否有工具或某种方法可以获取我原来的 ARM 汇编源代码并从中获取基本的 C 文件。我可能会在几天内自己完成,但有一个起点会很好。如果应用程序或方法是免费的,那就更好了:)
有什么建议么?
几年前我写了一个很好的 ARM 汇编程序,多年来它在它设计的 ARM 嵌入式系统上做得很好。现在,是时候将它移植到非 ARM 系统了,我想知道是否有工具或某种方法可以获取我原来的 ARM 汇编源代码并从中获取基本的 C 文件。我可能会在几天内自己完成,但有一个起点会很好。如果应用程序或方法是免费的,那就更好了:)
有什么建议么?
IDA Pro 的 Hex-Rays Decompiler 插件可以反编译 ARM。它有点贵,所以如果你只需要一个例程,它可能不是最佳选择。
不幸的是,我不知道这样的工具......会很好......; )
所以我能给出的唯一建议就是专注于逻辑。
你写了汇编代码。所以你知道编码应该做什么。即使使用 ARM 汇编,将其转换为 C 代码也不应该那么难。
我的意思是将 C 移植到 ARM 程序集可能是一项艰巨的任务。但是对于反向选项,如果您知道代码逻辑,并且如果您知道如何编写C,那应该就可以了...
创建 C 结构以简化您正在使用的内存区域。关于算法,它们不会改变。只需借助一些结构等将您正在做的事情从汇编翻译成C...
对不起,我可以给你这样的工具...
祝你好运 : )
您可以使用radare2反编译器插件(r2dec
),它将asm 转换为伪C。但我认为手动转换非常有趣。