乘積累加運算

乘積累加運算  是在 - { zh - hans: 數字信號; zh - hant: 數位信號; } - 處理器或一些微處理器中的特殊運算 。 實作此運算操作的硬體電路單元 ， 被稱爲 「 乘數累加器 」 。 這種運算的操作 ， 是將乘法的乘積結果和累加器 A 的值相加 ， 再存入累加器 ： 若沒有使用 MAC 指令 ， 上述的程序可能需要二個指令 ， 但 MAC 指令可以使用一個指令完成 。 而許多運算 （ 例如卷積運算 、 點積運算 、 矩陣運算 、 數字濾波器運算 、 乃至多項式的求值運算 ） 都可以分解爲數個 MAC 指令 ， 因此可以提高上述運算的效率 。 MAC指令的輸入及輸出的數據類型可以是整數 、 定點數或是浮點數 。 若處理浮點數時 ， 會有兩次的數值修約 （ Rounding ） ， 這在很多典型的DSP上很常見 。 若一條MAC指令在處理浮點數時只有一次的數值修約 ， 則這種指令稱爲 「 融合乘加運算 」 / 「 積和熔加運算 」 （ fused multiply - add, FMA ） 或 「 熔合乘法累積運算 」 （ fused multiply – accumulate, FMAC ） 。