Compiler: Unterschied zwischen den Versionen

Aus EINI
Wechseln zu: Navigation, Suche
K
 
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 EINI ist der '''Java Compiler''' (javac) relevant. Dieser übersetzt ein syntaktisch korrektes Javaprogramm in eine in [[Java/Bytecode|Bytecode]] vorliegende Klassendatei. Dabei muss die Quelldatei die Dateiendung '''.java''' besitzen. Die vom Compiler generierte Datei hat denselben Namen wie die Quelldatei, lediglich mit der Dateiendung '''.class''' .
 
Für das Modul EINI ist der '''Java Compiler''' (javac) relevant. Dieser übersetzt ein syntaktisch korrektes Javaprogramm in eine in [[Java/Bytecode|Bytecode]] vorliegende Klassendatei. Dabei muss die Quelldatei die Dateiendung '''.java''' besitzen. Die vom Compiler generierte Datei hat denselben 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.
+
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.

Aktuelle Version vom 7. Juni 2017, 10:58 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 EINI 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 denselben 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.