Píšete kód v Pythonu nebo C++. Počítač rozumí pouze binárnímu kódu. Kompilátor je program, který převádí zdrojový kód do strojového kódu. Přečte celý váš program, zkontroluje chyby a vytvoří spustitelný soubor. Po kompilaci program běží bez kompilátoru.
Kompilátory dělají víc než jen překlad. Optimalizují. Dobrý kompilátor odstraňuje redundantní instrukce, mění pořadí operací a efektivně alokuje registry. Rozdíl mezi naivním a optimalizovaným překladem může být desetinásobný v rychlosti.
Fáze kompilace
- Lexikální analýza: rozděluje kód na tokeny
- Parsování: vytváří syntaktický strom
- Sémantická analýza: kontrola typů a rozsahu
- Optimalizace: zlepšuje výkon
- Generování kódu: vytváří strojový kód
Ne všechny jazyky používají kompilátory. Interpretované jazyky jako Python spouštějí kód řádek po řádku. Just-in-time kompilátory kombinují oba přístupy a kompilují cesty k rychlému kódu za běhu. Každá strategie vyměňuje rychlost spouštění za rychlost provádění.
Comments
No comments yet. Be the first to share a thought.
Leave a comment