Compiler

Welcher allgemeine Ablauf von einem C-Programm bis zur ausführbaren Datei ist richtig?

  1. ALinken → Kompilieren → Assemblieren
  2. BAssemblieren → Linken → Kompilieren
  3. CKompilieren → Assemblieren → Linken
Antwort und Erläuterung anzeigen

Antwort: C. Kompilieren → Assemblieren → Linken

C-Quelldateien werden zunächst vom Compiler in maschinennahe Assemblersprache (oder direkt in Objektdateien) übersetzt und vom Assembler zu Objektdateien in Maschinencode. Schließlich fasst der Linker mehrere Objektdateien und Bibliotheken zusammen, legt die Adressen von Funktionen und Variablen fest und erzeugt die ausführbare Datei. In der Objektdatei stehen die Adressen von Funktionen in anderen Dateien noch nicht fest. Bei anderen Reihenfolgen wäre die Ausgabe einer Phase nicht die Eingabe der nächsten.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Compiler

  1. Wie heißt die Optimierung, die eine kurze Folge erzeugten Maschinencodes durch ein kleines Fenster betrachtet und ungünstige Befehlskombinationen durch bessere Befehle ersetzt?
  2. Welche Optimierung greift im obigen Code nach dem Inlining von sq, und welches Ergebnis ist richtig?
  3. Welche Beschreibung von Software Pipelining ist richtig?
  4. Warum ordnet ein Compiler bei strenger Einstellung die Gleitkommaaddition (a + b) + c nicht eigenmächtig zu a + (b + c) um?
  5. Welche Befehlsart wird bei der automatischen Vektorisierung des Compilers verwendet?

Vergleiche zu diesem Thema