Vector.FusedMultiplyAdd Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
FusedMultiplyAdd(Vector<Double>, Vector<Double>, Vector<Double>) |
Calcola ( |
FusedMultiplyAdd(Vector<Single>, Vector<Single>, Vector<Single>) |
Calcola ( |
FusedMultiplyAdd(Vector<Double>, Vector<Double>, Vector<Double>)
Calcola (left
* right
) + addend
, arrotondato come un'operazione ternaria.
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)
Parametri
Restituisce
(left
* right
) + addend
, arrotondato come un'operazione ternaria.
Commenti
Questo calcolo (left
* right
) come se fosse una precisione infinita, aggiunge addend
a tale risultato come se fosse una precisione infinita e infine arrotonda al valore rappresentabile più vicino.
Ciò differisce dalla sequenza non fusibile che calcola (left
* right
) come se fosse una precisione infinita, arrotondare il risultato al valore rappresentabile più vicino, aggiungere addend
al risultato arrotondato come se fosse una precisione infinita e infine arrotondare al valore rappresentabile più vicino.
Si applica a
FusedMultiplyAdd(Vector<Single>, Vector<Single>, Vector<Single>)
Calcola (left
* right
) + addend
, arrotondato come un'operazione ternaria.
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)
Parametri
Restituisce
(left
* right
) + addend
, arrotondato come un'operazione ternaria.
Commenti
Questo calcolo (left
* right
) come se fosse una precisione infinita, aggiunge addend
a tale risultato come se fosse una precisione infinita e infine arrotonda al valore rappresentabile più vicino.
Ciò differisce dalla sequenza non fusibile che calcola (left
* right
) come se fosse una precisione infinita, arrotondare il risultato al valore rappresentabile più vicino, aggiungere addend
al risultato arrotondato come se fosse una precisione infinita e infine arrotondare al valore rappresentabile più vicino.