Compiler: Unterschied zwischen den Versionen
Hauer (Diskussion | Beiträge) |
|||
Zeile 5: | Zeile 5: | ||
Die wichtigste Eigenschaft eines Compilers ist die Erhaltung der Semantik eines Programme. Dies bedeutet, dass ein übersetztes Programm den gleichen Algorithmus beschreiben muss, wie das menschenverständlich formulierte Programm, aus dem es generiert wurde. | Die wichtigste Eigenschaft eines Compilers ist die Erhaltung der Semantik eines Programme. Dies bedeutet, dass ein übersetztes Programm den gleichen Algorithmus beschreiben muss, wie das menschenverständlich formulierte Programm, aus dem es generiert wurde. | ||
− | Ein '''Bytecode'''-Compiler ist entsprechend ein Compiler der Programmcode in Bytecode übersetzt während ein '''Nativ(code)'''-Compiler Programmcode in Maschinencode übersetzt. | + | Ein '''Bytecode'''-Compiler ist entsprechend ein Compiler, der Programmcode in Bytecode übersetzt, während ein '''Nativ(code)'''-Compiler Programmcode in [[Maschinencode]] übersetzt. |
Version vom 22. Februar 2016, 19:56 Uhr
Ein Compiler (dt. Übersetzer) ist ein Programm, das ein (generiertes oder von Hand geschriebenes) Programm einer Programmiersprache in eine andere (meistens von Maschinen verstandene) Sprache übersetzt.
Für das Modul ist der Java Compiler (javac) relevant. Dieser übersetzt ein syntaktisch korrektes Javaprogramm in eine in Bytecode vorliegende Klassendatei. Dabei muss die Quelldatei die Dateiendung .java besitzen. Die vom Compiler generierte Datei hat den selben Namen wie die Quelldatei, lediglich mit der Dateiendung .class .
Die wichtigste Eigenschaft eines Compilers ist die Erhaltung der Semantik eines Programme. Dies bedeutet, dass ein übersetztes Programm den gleichen Algorithmus beschreiben muss, wie das menschenverständlich formulierte Programm, aus dem es generiert wurde.
Ein Bytecode-Compiler ist entsprechend ein Compiler, der Programmcode in Bytecode übersetzt, während ein Nativ(code)-Compiler Programmcode in Maschinencode übersetzt.