X64
AMD64には、元々はCMPXCHG16B命令はなかった。この命令は16バイト(128ビット)のメモリ領域を複数のCPUコアで排他的に共有することに使用される。この命令はWindowsで16TB以上の仮想メモリを使うために必要である。Socket AM2以降のAMD64で対応。
初期のAMD64, Intel 64は、64ビットモードでLAHF, SAHF命令をサポートしていない。この2つの命令はAHレジスタとフラグ間の転送命令で、元々は8ビットCPUである8080のプログラムを8086へ移植するのを容易にするために提供されていた。64ビットモードでは、使い道があまりない命令のように見える。しかし、PUSH/POP命令の組み合わせと比較して、メモリにアクセスせず高速にフラグをコピーできるため、VMwareなどの仮想化ソフトウェアがこの2つの命令に依存している。また、x87のステータスワードをフラグにコピーすることにも使用される。
Intel 64は、IA-32アーキテクチャの64ビット拡張であり、インテルによるAMD64の実装である。
次のプロセッサは、AMD64を実装する:
AMD Athlon 64
AMD Athlon 64 X2
AMD Athlon 64 FX
AMD Athlon II (搭載コア数などから、'X2', 'X3', 'X4', XLTモデルに分かれる)
AMD Opteron
AMD Turion 64
AMD Turion 64 X2
AMD Sempron ("Palermo" E6 ステッピングと、"Manila"以降の全モデル)
AMD Phenom (搭載コア数から、'X3', 'X4'に分かれる)
AMD Phenom II (搭載コア数から、'X2', 'X3', 'X4' 'X6'に分かれる)
AMD Bulldozer (マイクロアーキテクチャ) FX
AMD APU
AMD Ryzen
AMD EPYC
ARPL (Adjust Requestor Privilege Level)命令は、64ビットモードでは、新しいMOVSXD命令になった。 1バイトのINC, DEC命令は、64ビットモードでは、REXプリフィックスになった。一方、2バイトのINC, DEC命令は、64ビットモードでも使用可能である。 64ビットモードで廃止されたLDS, LES命令は、のちにインテルによってAVX命令のVEXプリフィックスとして割り当てられた。VEXプリフィックスに続く2バイト目を32ビットモードでは不正であった11xxxxxxという形式にすることにより、AVX命令は32ビットモードでも使用可能である。Windows NTの仮想DOSマシンでは、C4h C4h(LES AX, SPとデコードされる不正命令)を仮想86モードから32ビットプロテクトモードの呼び出しに使用していた。AVXは仮想86モード、リアルモードには対応していない。 64ビットモードで廃止されたBOUND命令は、のちにインテルによってAVX-512命令のEVEXプリフィックスとして割り当てられた。EVEXプリフィックスに続く2バイト目を32ビットモードでは不正であった11xxxxxxという形式にすることにより、AVX-512命令は32ビットモードでも使用可能である。