drcp (sm5 - asm)

计算分量级双精度倒数。

drcp[_sat] dest[.mask], [-]src0[_abs][.swizzle]
说明
dest
[in]结果的地址
dest = 1.0 / src0。 结果值必须准确到 1.0 ULP
src0
[in]要取的倒数。

备注

仅当当使用 double 作为参数时,HLSL 编译器才通过 rcp () 内部函数显式调用 DRCP 指令。 此指令的准确性要求为 1.0 ULP。

使用此指令的着色器将标有着色器标志,这将导致它们无法绑定,除非满足以下所有条件。

  • 系统支持 DirectX 11.1。
  • 系统包括 WDDM 1.2 驱动程序。
  • 驱动程序通过D3D11_FEATURE_DATA_D3D11_OPTIONS报告此指令的支持 。ExtendedDoublesShaderInstructions 设置为 TRUE

下表显示了使用各种数字类执行指令时获得的结果,假定不会发生溢出或下溢。

在此表中,F 表示有限实数。

src-> -Inf -F -0 +0 +F +inf NaN
dest-> -0 -F -inf +inf + F +0 NaN

此指令适用于以下着色器阶段:

顶点 外壳 Geometry 像素 计算
X X X X X X

最小着色器模型

以下着色器模型中支持此指令:

着色器模型 支持
着色器模型 5
着色器模型 4.1
着色器模型 4
着色器模型 3 (DirectX HLSL)
着色器模型 2 (DirectX HLSL)
着色器模型 1 (DirectX HLSL)

着色器模型 5 程序集 (DirectX HLSL)