インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
EMMS 命令には、レジスターを一度空にして、別のデータに使用できるようにする働きがあります。EMMS 命令は MMX レジスターをクリアし、浮動小数点タグワードを空に設定します。
浮動小数点スタックは使用後にクリアしなければならないため、浮動小数点命令を発行する前に MMX レジスターをクリアする必要があります。浮動小数点オーバーフロー例外を回避するために、すべての インテル® MMX® 命令コードセグメントの最後に EMMS 命令を挿入します。
インテル® MMX® 命令の実行後、マルチメディア・ステートを空にせずに浮動小数点命令を実行すると、予期しない動作が行われたり、パフォーマンスが低下する場合があります。