Pentium F00F バグ
問題を起こす機械語コード(f0 0f c7 c8)に対応するアセンブリ言語表現は以下のようになる。本来はメモリオペランドを指定して使用する前提の命令であり、下記のコードは実際のアセンブラで処理できないかもしれない。
不具合を引き起こすにはオペランドはレジスタである必要がある。ここでは例示としてeaxをオペランドにしているが、その他のレジスタでもよい。
cmpxchg8b命令は、オペランドとして指定されたアドレスのメモリ上の8byteの領域を取る。この命令を実行すると、edx:eaxの値とメモリ上の8byte値を比較し、一致したらZフラグをセットするとともにecx:ebxの値をこの8byte領域にストアし、一致しなければZフラグをクリアするとともに8byteのデータをedx:eaxにロードする(コンペア・アンド・スワップ、詳細はリファレンスマニュアル等を参照)。