Was ist Code-Generierung?
Code-Generierung ist ein Mechanismus, bei dem ein Compiler den Quellcode als Eingabe verwendet und ihn in Maschinencode umwandelt. Dieser Maschinencode wird tatsächlich vom System ausgeführt. Die Codegenerierung wird im Allgemeinen als letzte Phase der Kompilierung betrachtet, obwohl mehrere Zwischenschritte ausgeführt werden, bevor die endgültige ausführbare Datei erstellt wird. Diese Zwischenschritte dienen zur Optimierung und anderen relevanten Prozessen.
Der Codegenerierungsprozess wird von einer Komponente ausgeführt, die als Codegenerator, Teil des Compilerprogramms, bekannt ist. Der ursprüngliche Quellcode eines Programms durchläuft mehrere Phasen, bevor die endgültige ausführbare Datei generiert wird. Dieser endgültige ausführbare Code ist tatsächlich der Maschinencode, den Computersysteme ohne weiteres ausführen können.
In den Zwischenphasen der Kompilierung werden Codeoptimierungsregeln nacheinander angewendet. Manchmal hängen diese Optimierungsprozesse voneinander ab, sodass sie basierend auf der Abhängigkeitshierarchie nacheinander angewendet werden. Nachdem mehrere Phasen übergeben wurden, wird ein Syntaxbaum oder ein abstrakter Syntaxbaum generiert, der die Eingabe für den Codegenerator darstellt. An diesem Punkt wandelt der Codegenerator ihn in lineare sequentielle Befehle um. Nach diesem Schritt können je nach Compiler einige weitere Schritte folgen. Der endgültige optimierte Code ist der Maschinencode für die Ausführung und Ausgabeerzeugung.