1. 9
    1. 8

      There’s reading, and there’s skimming to get an idea about the overall structure of the code.

      You don’t have to learn assembly to skim it.

      Of course you also don’t have to learn assembly to read it; you can just look things up in a reference as you go.

      But you don’t find actual bugs or do reverse engineering by skimming.

      1. 3

        I’ll add that some instructions might do non-obvious things that can impact correctness and/or security. People doing verification of compiled programs or analyzing executables for malicious code should both be aware of that. The knowledge required to skim it is too superficial for that even if it can catch some problems.