Bytecode Definition

Was ist Bytecode?

Bytecode ist Programm-Code, der kompiliert wurde aus Quellcode in Low-Level-Code für einen Software-Interpreter. Er kann von einer virtuellen Maschine (z. B. einer JVM) ausgeführt oder weiter in Maschinencode kompiliert werden, der vom Prozessor erkannt wird.

Die verschiedenen Arten von Bytecode verwenden unterschiedliche Syntax, die von der entsprechenden virtuellen Maschine gelesen und ausgeführt werden kann. Ein bekanntes Beispiel ist Java-Bytecode, der aus Java-Quellcode kompiliert wird und auf einer Java Virtual Machine (JVM) ausgeführt werden kann. Nachfolgend sind Beispiele für Java-Bytecode-Anweisungen aufgeführt.

* new (neues Objekt erstellen)
* aload_0 (Referenz laden)
* istore (ganzzahligen Wert speichern)
* ladd (long Wert addieren)
* swap (zwei Werte vertauschen)
* areturn (Rückgabewert einer Funktion)

Es ist zwar möglich, Bytecode direkt zu schreiben, aber es ist viel schwieriger als das Schreiben von Code in einer Hochsprache, wie Java. Daher werden Bytecode-Dateien, wie z.B. Java .CLASS-Dateien, meist mit einem Compiler wie javac aus dem Quellcode erzeugt.

Bytecode vs. Assemblersprache

Bytecode ähnelt Assemblersprache insofern, als er keine Hochsprache ist, aber im Gegensatz zur Maschinensprache noch einigermaßen lesbar ist. Beide können als „Zwischensprachen“ betrachtet werden, die zwischen Quellcode und Maschinencode liegen. Der Hauptunterschied zwischen den beiden besteht darin, dass Bytecode für eine virtuelle Maschine ( Software) erzeugt wird, während Assembler für eine CPU ( Hardware) erstellt wird.

Die Definition von Bytecode auf dieser Seite ist eine Originaldefinition von SharTec.eu.
Das Ziel von SharTec ist es, Computerterminologie so zu erklären, dass sie leicht zu verstehen ist. Wir bemühen uns bei jeder von uns veröffentlichten Definition um Einfachheit und Genauigkeit. Wenn Sie Feedback zur Bytecode-Definition haben oder einen neuen Fachbegriff vorschlagen möchten, kontaktieren Sie uns bitte.