Eugen
Front-End und Back-End sind eine wichtige Technik bei Compiler-Konstruktionen. Compiler ist in zwei Gruppen Frontend und Backend unterteilt. Frontend befasst sich mit der Quellsprache des Compilers. Back End befasst sich mit der Zielsprache des Compilers. Wenn sich die Quellsprache ändert, müssen wir nur das Frontend des Compilers ändern. Wenn die Zielsprache geändert wird, ändern wir nur das Backend des Compilers.
Im Bootstrapping-Prozess schreiben wir "Quick and Dirty"-Compiler in Assemblersprache für die Sprache C. Dann schreiben Sie einen effizienten Compiler in C-Sprache (sagen wir B) und geben ihn als Eingabe an den "Quick and Dirty"-Compiler. Kompilieren Sie Compiler B mit dem neuesten Compiler, um einen effizienten Compiler zu erhalten. Lassen Sie sich diesen Vorgang anhand eines Beispiels erklären. Wir haben einen Compiler der C-Sprache, der auf Intel läuft. Jetzt wollen wir einen Compiler der C-Sprache, der auf AMD läuft. In diesem schreiben wir Frontend-Modul und kompilieren unser Programm in Intel-Bas-Maschine. Wir erhalten einen Cross-Compiler, der auf einem Intel-Rechner läuft, aber Code für einen AMD-Rechner generiert. Wir kompilieren das Quellprogramm auf einem Cross-Compiler und erhalten einen Compiler, der auf einem AMD-Computer läuft und Code für einen MAD-Computer generiert.