0と1の羅列でCPUが直接解釈・実行できる命令のこと。数字の羅列であるため、人間が解釈しやすい言語ではない。
通常、プログラムを開発するときはC言語などの人間が日常使う言葉に近い高級言語で書かれたコードを、コンパイラでCPUが実行できる機械語に変換するため、機械語で書かれたプログラムよりも実行速度は遅くなる。
ニーモニックなどのアセンブリ言語は、機械語とほぼ1対1に対応しているので実行速度を向上させやすく、OSの基盤となる部分の開発に使われることが多い。