div (sm4 - asm)
Komponentenweise Division.
| 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 Klassen von Zahlen erzielt werden, vorausgesetzt, dass weder Überlauf noch Unterlauf auftreten.
Beachten Sie die beiden zulässigen Implementierungen der Division: a/b und a * (1/b).
Ein Ergebnis davon ist, dass für große Nennerwerte (größer als 8,5070592e+37) Ausnahmen für die folgende Tabelle vorhanden sind, wobei 1/Nenner eine Denorm ist. Da Implementierungen eine Division als * (1/b) anstelle von a/b direkt durchführen können und 1/ [ ein großer Wert eine ] Denorm ist, die geleert werden könnte, würden einige Fälle in der Tabelle unterschiedliche Ergebnisse erzeugen. Beispielsweise kann der Wert (+/-)INF/(+/-) [ > 8,5070592e+37 ] naN für einige Implementierungen erzeugen, aber (+/-)INF für andere Implementierungen.
In dieser Tabelle bedeutet F endliche 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 Shaderstufen:
| Vertexshader | Geometrie-Shader | Pixelshader |
|---|---|---|
| x | x | x |
Shader-Mindestmodell
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 |