做逆向工程该学x86汇编还是arm汇编，还是都要学？
先从x86学起，完全理解之后，x64，mips，arm两种，都是大同小异，很容易就能学会。 我觉得可以先从那本著名的王爽《汇编语言》开始。 做逆向的话也不需要用汇编写程序，在我看来更关键的是对系统的理解，所以你也应该看一下计算机原理、操作系统相关的书。比如二进制程序在操作系统中如何加载和链接，理解这个对逆向非常重要。 一定要读一下《程序员的自我修养》。 另外最近出了一本《Linux二进制分析》，最近才有人译出来的书，对Linux环境下的逆向非常有帮助。 Windows下的逆向可以用一本韩国人写的书《逆向工程核心原理》进行入门，非常基础。 有了一定基础之后再去看著名的开源电子书Reverse Engineering for Beginners，安天有出翻译版本，叫做《逆向工程权威指南》。这本我觉得还是有一点基础再看，介绍各种架构都很全。 然后就是我觉得逆向的关键还是经验积累，汇编这东西真的是你看多了自然就熟悉了，去找一些crackme或者CTF题来自己研究研究，慢慢就找着套路了。