我对汇编语言或编译器没有经验。但是有人问我是否可以对低级汇编代码进行比较,看看已经进行了哪些更改,并将其与其他地方所做的更改相关联。基本上我们有一个软件提供商给我们新编译的软件比以前的版本更好地消除了错误,但我们不知道为什么错误不在那里而且不希望它再次弹出。我们一直试图找到我们自己的代码和他们自己的代码(我们不知道错误在哪里),但是使用新编译的代码版本(他们改变了编译代码的优化设置),事情有效。对不起有点抽象的问题。
答案 0 :(得分:1)
如果新代码和旧代码具有任何可观的大小,则几乎不可能区分它们。将会有大量的差异,特别是它是在不同的优化级别上编译的。在比较之前,您可以手动尝试查看给出问题的函数。如果你不知道多少组装(像我:),那将是艰难的。如果您只有可执行文件,则可以使用dumpbin.exe或objdump等转储实用程序来查看程序集。