Vector.FusedMultiplyAdd Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Sobrecargas
FusedMultiplyAdd(Vector<Double>, Vector<Double>, Vector<Double>) |
Cálculos ( |
FusedMultiplyAdd(Vector<Single>, Vector<Single>, Vector<Single>) |
Cálculos ( |
FusedMultiplyAdd(Vector<Double>, Vector<Double>, Vector<Double>)
Cálculos (left
* right
) + addend
, arredondados como uma operação ternária.
public:
static System::Numerics::Vector<double> FusedMultiplyAdd(System::Numerics::Vector<double> left, System::Numerics::Vector<double> right, System::Numerics::Vector<double> addend);
public static System.Numerics.Vector<double> FusedMultiplyAdd (System.Numerics.Vector<double> left, System.Numerics.Vector<double> right, System.Numerics.Vector<double> addend);
static member FusedMultiplyAdd : System.Numerics.Vector<double> * System.Numerics.Vector<double> * System.Numerics.Vector<double> -> System.Numerics.Vector<double>
Public Function FusedMultiplyAdd (left As Vector(Of Double), right As Vector(Of Double), addend As Vector(Of Double)) As Vector(Of Double)
Parâmetros
Retornos
(left
* right
) + addend
, arredondado como uma operação ternária.
Comentários
Isso calcula (left
* right
) como se fosse uma precisão infinita, adiciona addend
a esse resultado como se fosse uma precisão infinita e, por fim, arredonda para o valor representável mais próximo.
Isso difere da sequência não fundida que calcularia (left
* right
) como se fosse precisão infinita, arredondar o resultado para o valor representável mais próximo, adicionar addend
ao resultado arredondado como se fosse uma precisão infinita e, por fim, arredondar para o valor representável mais próximo.
Aplica-se a
FusedMultiplyAdd(Vector<Single>, Vector<Single>, Vector<Single>)
Cálculos (left
* right
) + addend
, arredondados como uma operação ternária.
public:
static System::Numerics::Vector<float> FusedMultiplyAdd(System::Numerics::Vector<float> left, System::Numerics::Vector<float> right, System::Numerics::Vector<float> addend);
public static System.Numerics.Vector<float> FusedMultiplyAdd (System.Numerics.Vector<float> left, System.Numerics.Vector<float> right, System.Numerics.Vector<float> addend);
static member FusedMultiplyAdd : System.Numerics.Vector<single> * System.Numerics.Vector<single> * System.Numerics.Vector<single> -> System.Numerics.Vector<single>
Public Function FusedMultiplyAdd (left As Vector(Of Single), right As Vector(Of Single), addend As Vector(Of Single)) As Vector(Of Single)
Parâmetros
Retornos
(left
* right
) + addend
, arredondado como uma operação ternária.
Comentários
Isso calcula (left
* right
) como se fosse uma precisão infinita, adiciona addend
a esse resultado como se fosse uma precisão infinita e, por fim, arredonda para o valor representável mais próximo.
Isso difere da sequência não fundida que calcularia (left
* right
) como se fosse precisão infinita, arredondar o resultado para o valor representável mais próximo, adicionar addend
ao resultado arredondado como se fosse uma precisão infinita e, por fim, arredondar para o valor representável mais próximo.