max (sm4 – asm)

Máximo de float em termos de componente.

max[_sat] dest[.mask], [-]src0[_abs][.swizzle], [-]src1[_abs][.swizzle],
Item Descrição
Dest
[in] O resultado da operação.
Dest = src0> = src1 ? src0 : src1
src0
[in] Os componentes a serem comparados com src1.
src1
[in] Os componentes a serem comparados ao src0.

Comentários

= é usado em vez de para > que, se min(x,y) = x, então max(x,y) = y.

O NaN tem tratamento especial. Se um operando de origem for NaN, o outro operando de origem será retornado e a escolha será feita por componente. Se ambos forem NaN, qualquer representação naN será retornada.

Os desnormas são liberados com sinal preservado antes da comparação. No entanto, o resultado gravado em dest pode ou não ser desnormado liberado.

A tabela a seguir mostra os resultados obtidos ao executar a instrução com várias classes de números, supondo que nenhum estouro ou fluxo inferior ocorra. F significa número real finito.

src0 src1-> -Inf F +inf NaN
-Inf -inf src1 +inf -inf
F src0 src0 ou src1 +inf src0
+inf +inf +inf +inf +inf
NaN -inf src1 +inf NaN

Esta instrução se aplica aos seguintes estágios de sombreador:

Sombreador de vértice Sombreador de geometria Sombreador de pixel
x x x

Modelo de sombreador mínimo

Essa função tem suporte nos modelos de sombreador a seguir.

Modelo de Sombreador Com suporte
Modelo de sombreador 5 sim
Modelo de sombreador 4.1 sim
Modelo de sombreador 4 sim
Modelo de sombreador 3 (DirectX HLSL) não
Modelo de sombreador 2 (DirectX HLSL) não
Modelo de sombreador 1 (DirectX HLSL) não

Assembly do Modelo de Sombreador 4 (DirectX HLSL)