C/C++ 到汇编语言

逆向工程 部件 C++ C 编译器 海湾合作委员会
2021-06-27 12:36:00

有没有关于如何将 C/C++ 代码转换为汇编语言的书籍或文章,我的意思是特定编译器的通用模式等?

2个回答

我相信最好的办法是学习一般的编译,特别是代码生成。龙书将是一个良好的开端。然后你可以查看 Cooper & co 的 Engineering a Compiler。

关于常见的编译器模式,这需要一些广泛的逆向工程,我相信,研究和工业界中很少有人愿意去做/分享。但是,有一个名叫 Agner Fog 的人进行了大量的基准测试,并在优化方面分析了编译器/代码模式与底层硬件架构的关系。你可以在这里找到他的作品您会感兴趣的是C++ 中优化软件:Windows、Linux 和 Mac 平台的优化指南简直就是金矿。接下来,我会推荐:优化汇编语言中的子程序:x86 平台的优化指南。

是的,https://beginners.re/ - https://beginners.re/RE4B-EN.pdf 上有一本非常好的书(例如,它涵盖了大量模式)

你可以花 5 到 10 年的时间学习编译的一般理论,在这段时间内它会继续前进,但如果你需要一个相当快速的当前模式纲要以供参考/快速培训,请使用那本书。