Compiler: Unterschied zwischen den Versionen
Zeile 1: | Zeile 1: | ||
− | 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. | + | 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''' . | 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 | + | Die wichtigste Eigenschaft eines Compilers ist die Erhaltung der Semantik eines Programms. Das 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 26. Februar 2016, 22:36 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 Programms. Das 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.