Kod bajtowy
Kod bajtowy to kod programu, który został skompilowany z kodu źródłowego do kodu niskiego poziomu przeznaczonego dla programowego interpretera. Może być wykonywany przez maszynę wirtualną taką jak (JVM) albo dalej kompilowany do kodu maszynowego rozpoznawanego przez procesor.
Różne typy kodu bajtowego używają różnej składni, którą może odczytywać i wykonywać odpowiednia maszyna wirtualna. Popularnym przykładem jest kod bajtowy języka Java, który jest kompilowany z kodu źródłowego Java i może być uruchamiany na maszynie wirtualnej języka Java (JVM). Poniżej przedstawiono przykłady instrukcji kodu bajtowego języka Java.
- new (utworzenie nowego obiektu)
- aload_0 (załadowanie odwołania)
- istore zapisanie wartości typu (integer)
- ladd dodanie wartości typu (long)
- swap (zamiana dwóch wartości)
- areturn (zwrócenie wartości z funkcji)
Chociaż możliwe jest bezpośrednie pisanie kodu bajtowego, jest to znacznie trudniejsze niż pisanie kodu w języku wysokiego poziomu, takim jak Java. Dlatego pliki kodu bajtowego, takie jak pliki Java .CLASS, są najczęściej generowane z kodu źródłowego za pomocą kompilatora, takiego jak javac.
Kod bajtowy a język asemblera
Kod bajtowy jest podobny do języka asemblera, ponieważ nie jest językiem wysokiego poziomu, ale nadal jest w pewnym stopniu czytelny, w przeciwieństwie do języka maszynowego. Oba można uznać za „języki pośrednie”, znajdujące się między kodem źródłowym a kodem maszynowym. Główna różnica między nimi polega na tym, że kod bajtowy jest generowany dla maszyny wirtualnej (oprogramowania), podczas gdy język asemblera jest tworzony dla CPU (sprzętu).
Sprawdź swoją wiedzę