CORDIC

CORDIC(),也稱為Volder演算法(),是一個可以計算三角函數,簡單且有效率的演算法,可以在任意進制下運算,一般會每次計算一位數字。因此CORDIC屬於逐位計算(Digit-by-digit)方法中的一個例子。

CORDIC演算法還有其他的名稱,像是圓形CORDIC (Jack E. Volder),曾經提到用「雙重迭代」(double iterations)來實現反正弦函數、反餘弦函數、自然對數、指數函數以及雙曲函數。雙重迭代中的作法和傳統的CORDIC演算法不同,傳統的CORDIC演算法中,迭代變數會在每次迭代時加一。但在雙重迭代中,迭代變數會先重複一次,然後才加一。因此雙重迭代CORDIC演算法的迭代變數會是i = 0, 0, 1, 1, 2, 2\dots,而傳統CORDIC演算法的迭代變數是i = 0, 1, 2\dots。雙重迭代法保證方法的收斂,不過其引數的有效範圍會變化。

針對R進制數字系統中,通用的CORDIC收斂問題,可以證明針對正弦、餘弦及反正切函數,每一個i(i = 0或1到n,其中n是位數)進行R - 1次迭代就可以保證收斂。若是自然對數、指數、雙曲正弦、雙曲餘弦及雙曲反正切函數,每一個i需要進行R次迭代。若是反正弦函數及反餘弦函數,每一個i需要進行2 R - 1次的迭代

}}

外部連結

评论 (0)

  • 还没有评论,来抢沙发吧。