• 締切済み

PICアセンブラの割り算のプログラムを教えて

PIC 16F84A を使いラジコンで送受信の実験をしています。 割り算で小数点以下の数字を使いたいのです。 1/10 = 0.1 あるいは 2/10 = 0.2 とかです。 プログラムの組み方が分かりません。 BCF STATUS,C RRF ***** というようなプログラムを使うようなのですが、 初心者に分かりやすく教えて頂けないでしょうか。 よろしくお願いします。

みんなの回答

  • trapezium
  • ベストアンサー率62% (276/442)
回答No.1

結果どうしたいのか? 単に処理できればいいのならフリーで公開されてるコード探すとか、アルゴリズムは把握してるけど PIC で書けないのか、それとも少数の除算が分からないのか? 少数、とりあえず固定少数のロジックということなら、整数の除算と基本は一緒です。違いは必要なビットまで少数点以下まで処理することと、それに伴ってワークエリアを確保しておくこと。整数部8bit,小数部8bitの16bit同士の除算だと、結果は整数部16bit,小数部16bitになります。 1/10,2/10 みたいに整数同士のケースなら int a = 1, b = 10; a <<= 8; printf("%x\n", a / b); とかの下位8bitが少数部です。

y4580
質問者

お礼

ご丁寧な解答ありがとうございます。 おかげさまで色々な計算方法があることが 分かってまいりました。 早速試してみたいと思います。 ありがとうございました。

関連するQ&A

専門家に質問してみよう