imul (sm4 - asm)

符号付き整数乗算。

imul destHI[.mask], destLO[.mask], [-]src0[.swizzle], [-]src1[.swizzle]
Item 説明
destHI
[入力]結果の上位 32 ビットのアドレス。
destLO
[入力]結果の下位 32 ビットのアドレス。
src0
[入力] src1 と乗算する値。
src1
[入力] src0 と乗算する値。

解説

32 ビット オペランド src0src1 のコンポーネントごとの乗算 (両方とも符号付き) により、正しい完全な 64 ビット (コンポーネントごと) の結果が生成されます。 下位 32 ビット (コンポーネントごと) は destLO に配置されます。 上位 32 ビット (コンポーネントごと) は destHI に配置されます。

64 ビットの結果の上位 32 ビットまたは下位 32 ビットが不要な場合は、レジスタを指定する代わりに、 destHI または destLO を NULL として指定できます。

ソース オペランドの省略可能な否定修飾子は、算術演算を実行する前に 2 の補数を受け取ります。

この命令は、次のシェーダー ステージに適用されます。

頂点シェーダー ジオメトリ シェーダー ピクセル シェーダー
x x x

最小シェーダー モデル

この関数は、次のシェーダー モデルでサポートされています。

シェーダー モデル サポートされています
シェーダー モデル 5 はい
シェーダー モデル 4.1 はい
シェーダー モデル 4 はい
シェーダー モデル 3 (DirectX HLSL) no
シェーダー モデル 2 (DirectX HLSL) no
シェーダー モデル 1 (DirectX HLSL) no

シェーダー モデル 4 アセンブリ (DirectX HLSL)