Understanding how compilers translate high-level languages into machine code, including concepts like lexical analysis, parsing and code optimisation.