div (sm4 – asm)
Komponentenbezogene Aufteilung.
div[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle] |
---|
Element | BESCHREIBUNG |
---|---|
Dest |
[in] Das Ergebnis des Vorgangs. |
src0 |
[in] Der Dividend. |
src1 |
[in] Der Divisor. |
Hinweise
Die folgende Tabelle zeigt die Ergebnisse, die beim Ausführen der Anweisung mit verschiedenen Zahlenklassen erhalten werden, vorausgesetzt, dass weder Überlauf noch Unterlauf auftreten.
Beachten Sie die beiden zulässigen Implementierungen von divide: a/b und a*(1/b).
Ein Ergebnis davon ist, dass es Ausnahmen von der folgenden Tabelle für große Nennerwerte gibt (größer als 8,5070592e+37), wobei 1/Nenner eine Denorm ist. Da Implementierungen dividieren können als a*(1/b), anstelle von a/b direkt, und 1/[großer Wert] eine Denorm ist, die geleert werden könnte, würden einige Fälle in der Tabelle zu unterschiedlichen Ergebnissen führen. Beispielsweise kann (+/-)INF / (+/-)[Wert > 8.5070592e+37] für einige Implementierungen NaN erzeugen, aber (+/-)INF für andere Implementierungen
In dieser Tabelle bedeutet F endlich-reelle Zahl.
src0 src1 –> | -Inf | -F | -denorm | -0 | +0 | +denorm | +F | +inf | Nan |
---|---|---|---|---|---|---|---|---|---|
-Inf | -inf | -inf | -inf | -inf | -inf | -inf | -inf | NaN | NaN |
-F | -inf | -F | src0 | src0 | src0 | src0 | +-F oder +-0 | +inf | NaN |
-denorm | -inf | src1 | -0 | -0 | +0 | +0 | src1 | +inf | NaN |
-0 | -inf | src1 | -0 | -0 | +0 | +0 | src1 | +inf | NaN |
+0 | -inf | src1 | +0 | +0 | +0 | +0 | src1 | +inf | NaN |
+denorm | -inf | src1 | +0 | +0 | +0 | +0 | src1 | +inf | NaN |
+F | -inf | +-F oder +-0 | src0 | src0 | src0 | src0 | +F | +inf | NaN |
+inf | NaN | +inf | +inf | +inf | +inf | +inf | +inf | +inf | NaN |
NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN | NaN |
Diese Anweisung gilt für die folgenden Shaderphasen:
Vertexshader | Geometrie-Shader | Pixelshader |
---|---|---|
x | x | x |
Minimales Shadermodell
Diese Funktion wird in den folgenden Shadermodellen unterstützt.
Shadermodell | Unterstützt |
---|---|
Shadermodell 5 | ja |
Shadermodell 4.1 | ja |
Shadermodell 4 | ja |
Shadermodell 3 (DirectX HLSL) | Nein |
Shadermodell 2 (DirectX HLSL) | Nein |
Shadermodell 1 (DirectX HLSL) | Nein |