2011-03-22 151 views
1

我在汇编语言或编译器方面没有经验。但是有人问我是否可以对低级汇编代码进行比较,查看发生了哪些变化,并将其与其他地方所做的更改关联起来。基本上我们有一个软件提供商,它为我们提供了新编译的软件,它比以前的版本在消除错误方面效果更好,但我们不知道为什么错误不在那里,不希望它再次弹出。我们一直试图追踪我们自己的代码和他们的代码(我们不知道错误在哪里),但是他们的代码的新编译版本(他们改变了编译代码的优化设置),事情工作。对于有些抽象的问题抱歉。汇编语言diff工具

回答

1

如果新代码和旧代码的大小相差很大,实际上不可能区分新代码和旧代码。会有很大的差异,尤其是它是在不同的优化级别编译的。您可以手动尝试查看之前发生问题的功能以进行比较。如果你不知道很多集会(像我:),这将是艰难的。如果您只有可执行文件,则可以使用dumpbin.exe或objdump等转储实用程序来查看程序集。