マシン語とは、マイクロプロセッサが直接解釈・実行できる言語。数字の列で表現され、人間が簡単に理解できるような形式にはなっていない。
マシン語を直接入力してプログラミングを行なうこともできるが、通常、マシン語のプログラムを作成する場合はマシン語の命令と一対一に対応したアセンブリ言語(ニーモニック)を使う。ニーモニックは、例えば、値のコピーに「mov」という単語を用いるなど、意味を類推しやすいアルファベットの並びになっている。
プログラミング言語は、より機械が解釈しやすい言語を低水準(低レベル)、人間が解釈しやすい言語を高水準(高レベル)というが、マシン語はもっとも低水準の言語である。
マシン語は直接プロセッサが実行するコードであるため、コンピュータのあらゆる機能を利用することができ、また、実行速度を向上させやすい。このため、ハードウェアを制御するデバイスドライバや、OSの基盤となる部分などではアセンブリ言語による開発が行なわれることが多い。
その反面、マシン語は複雑な、あるいは大規模なプログラムの開発には向かないため、アプリケーションソフトの多くは高水準言語によって開発され、コンパイラやインタプリタなどを使ってコンピュータが自動的にマシン語に変換して実行するようになっている。