宮前です AKI−H8/3048用のCコンパイラには、asin(x)(アークサイン)が 無いので 作りました。数学の本にあった級数展開式です。 一般項は (1・3・5・・・(2m−1)/(2・4・6・・・・2m・(2m+1)))X **(2m+1) (**はべき乗の意味)です。 結果は、角度で70degあたりからだんだんに精度が悪くなり、x=1.0(90 deg)で最大になります。 (他の象限も同じ)x=1.0で約2.4degの誤差。(double で計算) (検算は、bccで) 項の数を増やしても効果ありません。 70度以下は精度良く求まります。 70度を越すと、xが1.0に近づくので上の式ではしかたないのしょう。 式は、見るからに収束が悪そうです。(実際ゆっくり収束) atan(x)、acos(x)もこれ(asin(x))を使用してるので、共倒 れです。 avr−gccのライブラリソースのコメントに5次式一発で求める方法があったの で、 式どうりやったつもりが、全くだめでした。 良い方法ご存知の方、ご教授願います。 sinの値をテーブルで持って、補間しろというアドバイスは、遠慮願います。 他の関数(sin,cos、exp、log、powなど)は、精度良くできたので残 念でありません。