Hacker News new | ask | show | jobs
by RNeff 2892 days ago
Assembly language is mostly mnemonics for the individual instructions available in the hardware of a microprocessor. So you need to pick a microprocessor family, study the hardware (registers, different memories), and what each instruction does. The popular microprocessor architectures are: ARM, X86 (Intel, AMD), and the new open source RISC-V. Start with "Computer Architecture" by Hennessy and Patterson. Modern architectures overlap many instructions, this is part of the cause for Specter and Meltdown. Add a number to a register, the result won't be there immediately. A branch tests true, the branch will not complete for a couple of cycles.