div (sm4 - asm)

Division par composant.

div[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle]
Élément Description
Dest
[in] Résultat de l’opération.
src0
[in] Dividende.
src1
[in] Diviseur.

Remarques

Le tableau suivant montre les résultats obtenus lors de l’exécution de l’instruction avec différentes classes de nombres, en supposant qu’aucun dépassement de capacité ou sous-flux ne se produit.

Vous devez noter les deux implémentations autorisées de divide : a/b et a*(1/b).

L’un des résultats est qu’il existe des exceptions au tableau ci-dessous pour les valeurs de dénominateur volumineux (supérieures à 8,5070592e+37), où 1/dénominateur est un denorm. Étant donné que les implémentations peuvent effectuer la division en tant que a*(1/b), au lieu d’a/b directement, et que 1/[grande valeur] est un dénorm qui peut être vidé, certains cas de la table produisent des résultats différents. Par exemple, (+/-)INF / (+/-)[value > 8.5070592e+37] peut produire NaN sur certaines implémentations, mais (+/-)INF sur d’autres implémentations

Dans ce tableau, F signifie nombre fini-réel.

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 ou +-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 ou +-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

Cette instruction s’applique aux étapes suivantes du nuanceur :

Nuanceur de sommets Nuanceur de géométrie Nuanceur de pixels
x x x

Modèle de nuanceur minimal

Cette fonction est prise en charge dans les modèles de nuanceur suivants.

Modèle de nuanceur Pris en charge
Modèle de nuanceur 5 Oui
Modèle de nuanceur 4.1 Oui
Modèle de nuanceur 4 Oui
Modèle de nuanceur 3 (DirectX HLSL) non
Shader Model 2 (DirectX HLSL) Non
Modèle de nuanceur 1 (DirectX HLSL) non

Shader Model 4 Assembly (DirectX HLSL)