Kod bajtowy () – nazwa reprezentacji kodu używanej przez maszyny wirtualne oraz przez niektóre kompilatory. Kod składa się z ciągu instrukcji (których kody operacji mają zwykle długość jednego bajta, stąd nazwa), które nie odpowiadają bezpośrednio instrukcjom procesora i mogą zawierać instrukcje wysokiego poziomu (takie jak np. stwórz obiekt klasy X, połącz dwa łańcuchy itd.), jednak w przeciwieństwie do kodu źródłowego wymagają analizy tylko pojedynczych poszczególnych operacji.

W przeciwieństwie do maszyn fizycznych, które prawie zawsze są maszynami rejestrowymi, większość (choć nie wszystkie) maszyn wirtualnych to maszyny stosowe.

Języki i środowiska wykorzystujące kod pośredni Do najbardziej znanych języków programowania wykorzystujących kod pośredni zaliczyć można: Java (Kod bajtowy Javy), Perl (Kod bajtowy Perla), Python, C#, OBA w środowisku .NET oraz urządzenia z systemem Android, które wykorzystywały do wersji 4.4 KitKat maszynę wirtualną Dalvik

Przykład Python >>> import dis #"dis" - Disassembler of Python byte code into mnemonics. >>> dis.dis('print("Hello, World!")') 1 0 LOAD_NAME 0 (print) 2 LOAD_CONST 0 ('Hello, World!') 4 CALL_FUNCTION 1 6 RETURN_VALUE

Perl

Przykład kodu bajtowego Perla, źródło: sub hello { print "Hello, ", $_, "\n" } $x = "world!"; hello($x)