drcp (sm5 – asm)

Berechnet einen komponentenweisen Kehrwert mit doppelter Genauigkeit.

rcp [ _ sat ] dest [ .mask ] , [ - ] src0 [ _ abs ] [ .swizzle]
Element BESCHREIBUNG
Dest
[in ] Die Adresse der Ergebnisse
dest = 1.0 / src0. Der Ergebniswert muss auf 1,0 ULP genau sein.
src0
[in ] Die Zahl, von der der Kehrwert annimmt wird.

Bemerkungen

Die DRCP-Anweisung wird vom HLSL-Compiler nur ausgegeben, wenn sie explizit über die systeminterne rcp()-Anweisung aufgerufen wird, wenn ein Double als Argument verwendet wird. Die Genauigkeit dieser Anweisung muss 1,0 ULP sein.

Shader, die diese Anweisung verwenden, werden mit einem Shaderflag gekennzeichnet, das dazu führt, dass sie nicht gebunden werden, 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.

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.

In dieser Tabelle bedeutet F endliche reelle Zahl.

Src-> -inf -F -0 +0 +F +inf NaN
Dest-> -0 -F -inf +inf +F +0 NaN

Diese Anweisung gilt für die folgenden Shaderstufen:

Scheitelpunkt Rumpf Domain Geometrie Pixel Compute
X X X X X X

Shader-Mindestmodell

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)