• ベストアンサー

CORDICアルゴリズム

imogasiの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

読んだ人は「一体何のこっちゃ」と思いますでしょう。私も全然判らないものですが、引っかかっチャッた。 下記のページを読ませて頂いて、何をおしゃっているのか判りました。 ● http://www.inh.co.jp/~inasaims/cordic/cordic.html 引用「つまり、 1, 1/2, 1/4, 1/8, 1/16, ...... この部分の計算が、ビットシフトだけで実現できるのがCORDICのミソです。 つまり、計算自体が、x’=x+1/(2^n)y、のように ビットシフトと加算だけで非常に簡単にできるようになっています.」 ●昔アッセンブラを使っていた時、ビット演算を良く使いましたが 、レジスター等で1ビットシフト左シフトは2倍に、(回転式でない内)右シフトは1/2になりますよね。シフト回路は組みやすい。加算回路も基本的で、2種類の回路ロジックで済めば、組みこみ回路に重用される気がします。 ●上記ページに出てきた恒等変換の回転式に対比された、 回転マトリックスのgの[1 -pD、pD 1]、D=1/2^(n-1) の意味が(なぜSINの値を出せるのに使えるのか)判れば良いのでしょうね。疑問掲載分野としては、数学系の方が適当では?あとは専門家さまよろしく。

-soh-
質問者

お礼

回答ありがとうございまする うん、わしもそのページは見つけて いみわから~ん って感じだったんですよ(^^; 数学とどっちにしようかも悩んだんですが 1970年代に一世を風靡したアルゴリズムらしいのでプログラミング関係にしとこっかなぁ・・ って。 そんな考えだったんですけど、やっぱり数学にしとけばよかったかしら。。。。

関連するQ&A

  • Accessクエリの整数型と単精度型の演算について

    Accessのクエリで長整数型と単精度浮動小数点型を 加算すると答えが一致しません。理由を知っている人いますか? ちなみに長整数型と倍精度浮動小数点型を加算したときは答えが一致します。 浮動小数点は誤差がつきものなのは分かりますが、 確か単精度浮動小数点型は有効桁数7桁までのはず。 下記の例では問題ないように見えます。 (例)長整数型と単精度浮動小数型の演算:1000+0.20=1000.20000000298 長整数型と倍精度浮動小数型の演算:1000+0.20=1000.2 それではよろしくお願いします。

  • 浮動小数点演算と固定小数点演算の使い分けについて

    解説書などには、「浮動小数点は3.14E0の形」や「固定小数点は3.14」などと説明されています。 では、例えば、ごく一般的な32ビットマシンで「3.14 * 45.6」という命令を書いたときに演算されるのは浮動小数点演算なのか、固定小数点演算なのかがわかりません。例えばIntelのx86CPUは、内部にFPUを持っているそうですが、この場合は「3.14 * 45.6」は、内部では必ず浮動小数点演算になっているということなのでしょうか? 「3.14 * 45.6」を「3.14E0 * 4.56E1」と書いた場合にしか浮動小数点演算されないということではないと思っているのですが、実際の浮動小数点演算と固定小数点演算の内部的な切り替えがわかりません。 理解が足りなくて、おかしな質問になっていましたら、その点もご指摘いただければうれしいです。

  • AthronX2 5200とCore2DuoE6600で浮動小数点の演算が速いのはどっち?

    AthronX2 5200とCore2DuoE6600で浮動小数点の演算が速いのはどちらなのでしょうか?ベンチマークでいろいろ異なる結果が出て困っています。HD BENCHではCore2DuoE6600がAthronx2 4200に負けてしまいました。CUBASE(DAW)を使用しているので浮動小数点演算が速くないと困るのです。本当にAthronX2 5200とCore2DuoE6600で浮動小数点の演算が速いのはどちらなのでしょうか?Core2DUOの浮動小数点演算の能力が低ければ買い替えを検討しています。多角的な側面からアドバイス願います。

  • 量子化

    量子化についてご教示下さい。 例えばある浮動小数点表示を考えましょう。ただしその表示方法で表すことができる、絶対値が最も小さい値をaとします。この浮動小数点表示で0で表される場合を0に置換し、0より大きい値で表される場合をT(>>a)、負の値で表される場合を-Tに置換するとします。 この演算を量子化と記してよいでしょうか?

  • 低消費電力版CPUのクロック当たり処理能力低い理由

    たとえば下記の3つのCPUです。 i3-3220T 最高クロック2.80GHz 浮動小数点演算性能 44.80 GFLOPS i5-3210M 最高クロック3.10GHz 浮動小数点演算性能 40.00 GFLOPS i7-3517U 最高クロック3.00GHz 浮動小数点演算性能 30.40 GFLOPS http://hardware-navi.com/cpu.php 最高クロックはほぼ同じですが、どうして最大演算性能にはこんなに違いがあるのでしょうか。 低消費電力版CPUがクロック当たり処理能力が低くなる理由を具体的に説明お願いします。

  • 浮動小数点演算とは

    浮動小数点演算とは何か調べたのですがイマイチよくわかりません。 簡単に言うとどういうことでしょうか?

  • iアプリで浮動小数点を使いたい

    iアプリで確立を計算したいのですが、浮動小数点が使えないので困っています。 整数演算で浮動小数点を扱うクラスを自作するしかないのでしょうか? 使えそうなクラスなど、ご存知でしたら教えてください。

    • ベストアンサー
    • Java
  • 浮動小数点演算FLOPSについて

    コンピュータの勉強はじめたのですが 浮動小数点演算とは どのようなことをさすのでしょうか。

  • 浮動小数点数を10進表記するアルゴリズム

    与えられた浮動小数点数から正確な10進表記の文字列を得るにはどうすればよいでしょうか。 主に、2進の指数を10進の指数に直す部分で悩んでいます。 単純に考えれば、2進数字の各桁について10進表記の数字列を求めて10進演算する方法が思いつきますが、大きな数や小さな数では計算量が極端に増えてしまいます。もっと効率的な方法はないものでしょうか。 logを取ればうまいこと計算量を減らせそうな気もしますが、正確さが犠牲になりそうです。

  • 安価に、高速な浮動小数点演算をするためのハードウェアについて

    安価に、高速な浮動小数点演算をするためには、どんなハードウェアがあるでしょうか、またはこれらの情報をまとめているサイトなどがありましたら、教えていただけないでしょうか。 具体的には、現在入手できる浮動小数点演算の得意なICの一覧などが得られるとうれしいです。 現在のところ、計算対象を限っていませんが、最終的な目標として行列計算などが高速に出来たらと考えています。