Kurz erklärt
Ein Compiler liest Quelltext zuerst als Zeichenstrom. Der Lexer zerlegt ihn in Token, der Parser baut daraus anhand der Grammatik einen Syntaxbaum (AST).
Genauer
Der Lexer erkennt Wörter, Zahlen, Operatoren und Klammern und ignoriert Leerraum und Kommentare. Der Parser prüft, ob die Token der Grammatik der Sprache entsprechen, und bildet die Struktur ab, z. B. 1 + 2 * 3 als Baum, in dem die Multiplikation tiefer liegt.