機械語
基本的に、あるアーキテクチャの中央処理装置のための機械語は、別のアーキテクチャの中央処理装置のためには全く使えない。
たとえば、Pentium系列とPowerPC系列の双方で動く機械語プログラムが存在しないのは、命令セットに互換性が無いからである。
たとえ同じメーカー(や同系列企業)の中央処理装置でも、ある世代の中央処理装置のための機械語が、そのアーキテクチャの「世代」が代替わりし、アーキテクチャが変化すると、全く動かない。機械語プログラムがそのまま動くか否か、という互換性を「バイナリ互換性」と言う。
この常識を変えてみようと試みられたことがあり、1994年にIBMからコンセプトが公表されたプロセッサPowerPC 615(英語版)はx86とPowerPC命令の両立を目指し、32-bit PowerPC コード、64-bit PowerPC コード、32-bit x86 コードの実行が可能になる、という構想のものだったが、結局量産には至らなかった。
なお、まったく役に立たない雑学だが、注意深く機械語命令を選ぶことによって、異なるアーキテクチャでもたまたま動作する、ごくごく小さなプログラムを、シャレで(お遊び的に)書くことは可能な場合がある。