Kompilierung


Kompilierung

Unter Kompilierung (auch Compilierung oder Übersetzung oder Wandlung) versteht man in der EDV die Anwendung eines Compilers auf den Quelltext eines Computerprogramms. Dabei wird das in einer Quellsprache geschriebene Programm in ein semantisch äquivalentes Programm in der Zielsprache übersetzt.

Das Gegenteil, also beispielsweise die Rückübersetzung von Maschinensprache in Quelltext, wird Dekompilierung und entsprechende Programme Decompiler genannt.

Ablauf

Bei der Kompilierung eines Computerprogrammes wird meist aus dem Quelltext eine Bibliothek oder ein ausführbares Programm erzeugt, die je nach Plattform beispielsweise als ausführbare Datei (executable), Binärdatei oder Lademodul bezeichnet werden. Es kann aber auch je nach Compiler beispielsweise eine Ausgabe in einer anderen Programmiersprache erzeugt werden, die dann weiterverarbeitet wird.

Wenn durch das Kompilieren eine Bibliothek oder ein Programm erzeugt werden soll, so folgt nach der Kompilierung ein weiterer Arbeitsschritt, der häufig automatisch mit ausgeführt wird, das Linken (Binden). Dabei werden Verweise auf die Laufzeitbibliothek (runtime library) und externe Bibliotheken aufgelöst und das vom Betriebssystem erwartete Format für Programme bzw. Bibliotheken erzeugt. Heutzutage werden dabei die externen Bibliotheken meist nicht fest zum Programm gebunden, sondern lediglich Verweise auf von mehreren Programmen gemeinsam genutzte Bibliotheken (shared libraries) erzeugt. Manche Systeme führen das Linken auch erst zur Laufzeit durch.

Komplexe Kompiliervorgänge werden im Allgemeinen durch einen Projekterstellungsprozess gesteuert.

Abgrenzung zur Interpretation

Dem Kompilieren steht die Interpretation gegenüber, die das Programm Anweisung für Anweisung direkt ausführt.

Viele moderne Systeme kompilieren das Programm zur Laufzeit (ganz oder teilweise), etwa Perl, Java oder C# (siehe auch Just-in-time-Kompilierung). Dadurch werden die Vorteile von Interpretation und Kompilierung verbunden.


Wikimedia Foundation.

Schlagen Sie auch in anderen Wörterbüchern nach:

  • bedingte Kompilierung —   [engl. conditional compilation], die Kompilierung eines Quellcodes in Abhängigkeit von im Programmtext angegebenen Bedingungen (Compiler). Programmiersprachen, die bedingte Kompilierung unterstützen, stellen spezielle Anweisungen zur Verfügung …   Universal-Lexikon

  • Just-in-time-Kompilierung — (JIT Kompilierung) ist eine Technik aus der Praktischen Informatik, um Software zur Laufzeit in Maschinen Code zu übersetzen. Just in time bedeutet „gerade rechtzeitig“. Funktionsweise Im Gegensatz zu einem herkömmlichen Compiler übersetzt ein… …   Deutsch Wikipedia

  • JIT-Kompilierung — Just in time Kompilierung (JIT Kompilierung) ist eine Technik aus der Praktischen Informatik, um die Performance von Anwendungssoftware, die als Bytecode vorliegt, zu verbessern. Just in time bedeutet „gerade rechtzeitig“. Der JIT Compiler… …   Deutsch Wikipedia

  • Common Intermediate Language — (CIL) (teilweise auch nur Intermediate Language (IL)) ist eine Zwischensprache, in die alle Programme der Common Language Infrastructure übersetzt werden. CIL ist eine objektorientierte Assemblersprache und ist vollständig stackbasiert. Auf dem… …   Deutsch Wikipedia

  • Intermediate language — Common Intermediate Language (CIL) (teilweise auch nur Intermediate Language (IL)) ist eine Zwischensprache, in die alle Programme der Common Language Infrastructure übersetzt werden. CIL ist eine objektorientierte Assemblersprache und ist… …   Deutsch Wikipedia

  • MSIL — Common Intermediate Language (CIL) (teilweise auch nur Intermediate Language (IL)) ist eine Zwischensprache, in die alle Programme der Common Language Infrastructure übersetzt werden. CIL ist eine objektorientierte Assemblersprache und ist… …   Deutsch Wikipedia

  • Microsoft Intermediate Language — Common Intermediate Language (CIL) (teilweise auch nur Intermediate Language (IL)) ist eine Zwischensprache, in die alle Programme der Common Language Infrastructure übersetzt werden. CIL ist eine objektorientierte Assemblersprache und ist… …   Deutsch Wikipedia

  • HotSpot — Entwickler Sun Microsystems Aktuelle Version 20 Betriebssystem plattformübergreifend Programmier­sprache C/C++ …   Deutsch Wikipedia

  • Compilierung — Unter Kompilierung (auch Compilierung oder Übersetzung oder Wandlung) versteht man in der EDV die Anwendung eines Compilers auf den Quelltext eines Computerprogramms. Dabei wird das in einer Quellsprache geschriebene Programm in ein semantisch… …   Deutsch Wikipedia

  • Dekompilierung — Unter Kompilierung (auch Compilierung oder Übersetzung oder Wandlung) versteht man in der EDV die Anwendung eines Compilers auf den Quelltext eines Computerprogramms. Dabei wird das in einer Quellsprache geschriebene Programm in ein semantisch… …   Deutsch Wikipedia


Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”

We are using cookies for the best presentation of our site. Continuing to use this site, you agree with this.