Maschinensprache (auch Maschinencode oder nativer Code genannt) ist eine Programmiersprache, in der die Instruktionen, die vom Prozessor eines Computers direkt ausgeführt werden können, als Sprachelemente festgelegt sind – die „Programmiersprache eines Computers“ (Duden Informatik ISBN 3-411-05232-5).
Die Menge und die formale Struktur/Syntax dieser auch „Anweisungen“ oder „Befehle“ genannten Instruktionen sind je Prozessortyp definiert. Ein Befehl ist hierbei eine Anweisung an den Prozessor, eine bestimmte Operation durchzuführen, beispielsweise eine Addition oder einen Wertevergleich. Jede funktionelle Leistung eines Prozessors ist Ergebnis der Ausführung von Maschinencode bzw. eines Maschinenprogramms, das heißt eines in Maschinensprache vorliegenden Programms. Programm in Maschinensprache wird heutzutage kaum mehr von Programmierern direkt erzeugt, sondern unter Nutzung einer höheren Programmiersprache, wobei erst mithilfe eines Compilers ausführbarer Maschinencode entsteht. Intern ist jeder Befehl der Maschinensprache durch ein oder mehrere Zahlenwerte kodiert. Folgendes in der Programmiersprache C geschriebene Programm könnte folgenden Zeichen entsprechen:
Programm in Hochsprache
int main() {
int a = 2;
int b = 3;
int c = a + b;
return c;
}
Maschinensprache
55 48 89 E5
C7 45 FC 02
C7 45 F8 03
8B 45 F8 8B 55 FC 01 D0 89 45 F4
8B 45 F4