Freigeben über


ddiv (sm5 - asm)

Berechnet eine Komponentendivision mit doppelter Genauigkeit.

ddiv[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle]
Element BESCHREIBUNG
Dest
[in] Das Ergebnis des Vorgangs. Der Ergebniswert muss auf 0,5 ULP genau sein.
src0
[in] Der Dividend.
src1
[in] Der Divisor.

Hinweise

Die DDIV-Anweisung wird vom HLSL-Compiler ausgegeben, wenn der Divisionoperator mit Doubles verwendet wird. Die Genauigkeit dieser Anweisung muss 0,5 ULP sein.

Shader, die diese Anweisung verwenden, werden mit einem Shaderflag gekennzeichnet, das dazu führt, dass sie nicht binden können, es sei denn, alle folgenden Bedingungen sind erfüllt.

  • Das System unterstützt DirectX 11.1.
  • Das System enthält einen WDDM 1.2-Treiber.
  • Der Treiber meldet Unterstützung für diese Anweisung über D3D11_FEATURE_DATA_D3D11_OPTIONS. ExtendedDoublesShaderInstructions ist auf TRUE festgelegt.

In der folgenden Tabelle werden die Ergebnisse angezeigt, die beim Ausführen der Anweisung mit verschiedenen Zahlenklassen angezeigt werden, vorausgesetzt, dass weder Überlauf noch Unterlauf auftreten.

In dieser Tabelle bedeutet F endlich-reelle Zahl.

src0 src1 –> -Inf -F -1.0 -0 +0 +1.0 +F +inf NaN
-Inf NaN +inf +inf +inf -inf -inf -inf NaN NaN
-F +0 +F -src0 +inf -inf src0 -F -0 NaN
-0 +0 +0 +0 NaN NaN -0 -0 -0 NaN
+0 -0 -0 -0 NaN NaN +0 +0 +0 NaN
+F -0 -F -src0 -inf +inf src0 +F +0 NaN
+inf NaN -inf -inf -inf +inf +inf +inf NaN NaN
NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

Diese Anweisung gilt für die folgenden Shaderphasen:

Scheitelpunkt Hull Domain Geometrie Pixel Compute
X X X X X X

Minimales Shadermodell

Diese Anweisung wird in den folgenden Shadermodellen unterstützt:

Shadermodell Unterstützt
Shadermodell 5 ja
Shadermodell 4.1 Nein
Shadermodell 4 Nein
Shadermodell 3 (DirectX HLSL) Nein
Shadermodell 2 (DirectX HLSL) Nein
Shadermodell 1 (DirectX HLSL) Nein

Shadermodell 5-Assembly (DirectX HLSL)