Java Edior ein Code "Compilieren"?

...komplette Frage anzeigen

3 Antworten

Hey Invader, da du die Online-Erklärungen nicht verstehst versuch ich es mal ganz einfach. 

Der Computer kann in Wirklichkeit nur mit 1en und 0en/bits und bytes arbeiten und eben nicht mit komplexen Daten wie ganzen Wörtern. Ganz zum Schluss schaut ein Programm immer so aus, dass du einen Haufen 1en und 0en in verschieden RAM-Speicherstellen abgelegt hast, welche dann von der CPU ausgelesen werden. Falls du genauer wissen möchtest wie die CPU das macht hier ein Video:

Damit nun aus deinem Quellcode der sogenannten Hochsprache Java if(bla){blubb();} eine Zeichenkette entsteht die der Computer verarbeiten kann, eben 111000101101110, muss dieser irgendwie übersetzt werden. Dafür sind Compiler da, da das ganze sonst händisch gemacht werden müsste. Diese geben dem Code die richtige Struktur und den richtigen Inhalt um in den RAM abgelegt werden zu können. 

Falls dich das ganze Thema interessiert, wie Maschinencode genau aussieht solltest du nach Assembler(Maschinensprache) googeln. Hier siehst du wie ein Program nur noch aus Hex-Werten geschrieben wird und so der CPU ermöglicht wird einen Speicher auszulesen und zu wissen WO sie WIE weiter machen muss.

Ganz kurz und bündig. Ein Compiler übersetzt deinen Code in etwas was der Computer richtig interpretieren kann.

Liebe Grüße, JutenMorgen!

Antwort bewerten Vielen Dank für Deine Bewertung

Das bedeutet, dass du aus dem Code den eigentlichen Interpretercode machst, der später ausgeführt werden kann.

Antwort bewerten Vielen Dank für Deine Bewertung

Beim Compilieren wandelst du den geschriebenen Code in Maschinencode um, welcher am Ende ausgeführt wird. Wenn du also das Programm ausführst, wird nicht der geschriebene Code ausgeführt sondern der Maschinencode.

Das ist auch ein Nachteil an Java, nach jeder Änderung im Code musst du wieder neu compilieren, andere Sprachen haben das nicht, da bei diesen der geschriebene Code durch den Interpreter verstanden wird.

Antwort bewerten Vielen Dank für Deine Bewertung
NeoExacun 03.09.2016, 13:35

Nur Skripte werden direkt Interpretiert. Die meisten Programmiersprachen werden kompiliert oder es wird, wie bei Java, eine Zwischenstufe "kompiliert" die wiederrum interpretiert wird.

1
NeoExacun 03.09.2016, 13:46
@astoorangi

Durchaus, sie machen aber nciht den Großteil aus, so wie das bei dir klingt.

0
adenosi 03.09.2016, 14:05
@NeoExacun

Bei Java werden die Programme zu Java Bytecode compiliert, die von der Java VM dann interpretiert werden können.

Bei Android jedoch ab Android 5.0 wird der Java code aber nicht mehr zu Bytecode compiliert sondern zu Maschinencode der ausgeführt werden kann.

Javascript wird mittlerweile intern bei den Browsern auch zu Maschinencode verarbeitet, deswegen bin ich mir nicht mehr so sicher wie man die Scriptsprachen von den Programmiersprachen unterscheidet.

0

Was möchtest Du wissen?