StrictMath.Fma 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
Fma(Double, Double, Double) |
傳回三個自變數的融合乘法;也就是說,傳回與第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入至最 |
Fma(Single, Single, Single) |
傳回三個自變數的融合乘法;也就是說,傳回與第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入至最 |
Fma(Double, Double, Double)
傳回三個自變數的融合乘法;也就是說,傳回與第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入至最 double
接近的 。
[Android.Runtime.Register("fma", "(DDD)D", "", ApiSince=33)]
public static double Fma (double a, double b, double c);
[<Android.Runtime.Register("fma", "(DDD)D", "", ApiSince=33)>]
static member Fma : double * double * double -> double
參數
- a
- Double
值
- b
- Double
值
- c
- Double
值
傳回
(a × b + c) 計算,如同無限制的範圍和精確度,並將一次四捨五入為最 double
接近的值
- 屬性
備註
傳回三個自變數的融合乘法;也就是說,傳回與第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入至最 double
接近的 。
捨入是使用 java.math.RoundingMode#HALF_EVEN捨入到最接近的進位模式來完成。
相反地,如果 a * b + c
評估為一般浮點表達式,則會涉及兩個四捨五入錯誤,第一個用於乘法運算,第二個用於加法運算。
特殊案例: <ul><li> 如果有任何自變數為 NaN,則結果為 NaN。
<li> 如果前兩個自變數的其中一個是無限的,另一個是零,則結果為 NaN。
<li> 如果前兩個自變數的確切乘積是無限的(換句話說,至少有一個自變數是無限的,另一個自變數既不是零也不是 NaN),而第三個自變數是相反正負號的無限,結果為 NaN。
</ul>
請注意, fusedMac(a, 1.0, c)
傳回與 (a + c
) 相同的結果。 不過, fusedMac(a, b, +0.0)
em not/em> 一律會傳回與 (a * b
) 相同的結果,因為 fusedMac(-0.0, +0.0, +0.0)
是 +0.0
while (-0.0 * +0.0
) 是 -0.0
;fusedMac(a, b, -0.0)
但等於 (a * b
) 。<><
已在 9 中新增。
的 java.lang.StrictMath.fma(double, double, double)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。
適用於
Fma(Single, Single, Single)
傳回三個自變數的融合乘法;也就是說,傳回與第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入至最 float
接近的 。
[Android.Runtime.Register("fma", "(FFF)F", "", ApiSince=33)]
public static float Fma (float a, float b, float c);
[<Android.Runtime.Register("fma", "(FFF)F", "", ApiSince=33)>]
static member Fma : single * single * single -> single
參數
- a
- Single
值
- b
- Single
值
- c
- Single
值
傳回
(a × b + c) 計算,如同無限制的範圍和精確度,並將一次四捨五入為最 float
接近的值
- 屬性
備註
傳回三個自變數的融合乘法;也就是說,傳回與第三個自變數加總的前兩個自變數的確切乘積,然後將一次四捨五入至最 float
接近的 。
捨入是使用 java.math.RoundingMode#HALF_EVEN捨入到最接近的進位模式來完成。
相反地,如果 a * b + c
評估為一般浮點表達式,則會涉及兩個四捨五入錯誤,第一個用於乘法運算,第二個用於加法運算。
特殊案例: <ul><li> 如果有任何自變數為 NaN,則結果為 NaN。
<li> 如果前兩個自變數的其中一個是無限的,另一個是零,則結果為 NaN。
<li> 如果前兩個自變數的確切乘積是無限的(換句話說,至少有一個自變數是無限的,另一個自變數既不是零也不是 NaN),而第三個自變數是相反正負號的無限,結果為 NaN。
</ul>
請注意, fma(a, 1.0f, c)
傳回與 (a + c
) 相同的結果。 不過, fma(a, b, +0.0f)
em not/em> 一律會傳回與 (a * b
) 相同的結果,因為 fma(-0.0f, +0.0f, +0.0f)
是 +0.0f
while (-0.0f * +0.0f
) 是 -0.0f
;fma(a, b, -0.0f)
但等於 (a * b
) 。<><
已在 9 中新增。
的 java.lang.StrictMath.fma(float, float, float)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。