Kompilátor (programovanie): Rozdiel medzi revíziami

d
(literatura)
Značky: vizuálny editor prvá úprava redaktora
 
 
== Štruktúra kompilátoru ==
Bez ohľadu na konkrétne fázy prekladu kompilátoru, je bežné sa stretnúť s rozdelením týchto fáz na tri časti: predná časť (angl. front end), strdnástredná časť (angl. middle end) a zadná časť (angl. back end).
*''Predná časť'' overuje syntax a sémantiku špecifickú pre daný zdrojový kód. Pokiaľ je program na vstupe syntakticky nesprávny (obsahuje syntaktickú chybu), kompilátor by mal vhodným spôsobom na to reagovať v tejto fáze prekladu. Predná časť spravidla zahŕňa lexikálnu analýzu, syntaktickú analýzu a sémantickú analýzu. Výstupom prác prednej časti kompilátoru býva program v intermediárnom kóde, ktorý je poskytovaný na spracovanie nasledujúcim častiam kompilátora.
*''Stredná časť'' vykonáva optimalizácie nad intermediárnym kódom. Tieto optimalizácie sú nezávislé na architektúre cieľového počítača. Príkladom optimalizácií v strednej časti prekladu je odstraňovanie zbytočných alebo nedosiahnuteľných častí kódu, či [[optimalizácia cyklov]]. Výstupom tejto časti kompilátora je "optimalizovaný" (slovo "optimalizácia" je v kontexte prekladačov nepresné, nakoľko výsledkom optimalizácií prekladača nie je kód, ktorý je optimálny. Často je len optimálnejší oproti pôvodnému intermediárnemu kódu, ak vôbec) intermediárny kód, ktorý je následne používaný zadnou časťou kompilátora.
1

úprava