- ベストアンサー
データ型 double の桁数について
picマイコンをPICC liteと言うCコンパイラで作成しているのですが、そのPICC liteでは、データ型のdoubleは24ビットで、-3.4×10の38乗 ~ 3.4×10の38乗となっているのですが・・・この意味がさっぱりわからず何桁まで扱えるのかわかりません。 小数点以下は何桁? 整数部分は何桁? ・・・整数 小数含めて何桁まで大丈夫なのでしょうか?
- みんなの回答 (4)
- 専門家の回答
関連するQ&A
- C++でのdouble型データの精度
こんにちは。 コンパイラは、Borland C++ Compiler 5.5 を使っています。 表題の「精度」とは、 正確な値が保証される、「整数部分の桁数」+「小数点以下の桁数」 の事です。 普通、double型データの「精度」は、16桁であると認識しています。 そのため、例えば、 a=123456789012345.6 という浮動小数点数は16桁なので、正しい値が保証されるはずです。 ところが、printf("%f", d1); のようにprintf関数で表示すると、 123456789012345.593800 と表示されました。 これは、d1が正しい値を保持できていないという事です そこで、桁数を下げていった所、 a=1234567890.1 つまり、精度は11桁しかないという事になります。 何か僕が勘違いしているのでしょうか? それとも、僕が使っているコンパイラの精度が11桁しかないという事なのでしょうか? 何かお分かりの方がいらっしゃれば、是非アドバイスを頂きたいと思います。 では、よろしくお願い致します。
- ベストアンサー
- C・C++・C#
- エクセルVBA データ型 SingleとDouble
SingleとDoubleともに、整数部分の範囲についてはどのように 考えればよいのでしょうか?例えば、小数点以下4桁までを正確 に計算できれば良く、変数の値が 54321.**** となる場合は Singleで良いのでしょうか? SingleとDoubleで対応できる、整数部分の範囲を教えてください。 お手数ですが、よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 小数点の桁数ってなんて言いましたっけ?
0.001 という数値から小数点3桁の3を算出したいんですが、この3の事をなんて言いましたっけ? 10のマイナス3乗?指数?Log10? またC#でこの値を簡単に出す関数なんてありましたでしょうか?
- ベストアンサー
- 数学・算数
- エクセルで数値の桁数を一定の法則で統一したい
E列にA~D列のデータから計算された数値が並んでいます。 たとえば E1:9.9 E2:86.08695652 E3:212.8571429 E4:1158.13953488372 これらを E1:9.90 (整数1桁の場合は四捨五入して小数2桁まで) 1未満の数値も小数2桁で(例、0.96) E2:86.1 (整数2桁の場合は四捨五入して小数1桁まで) E3:213 (整数3桁の場合は四捨五入して小数カット) E4:1158 (整数4桁の場合は四捨五入して小数カット) 上記の法則で見やすく整理したいのです。 整数4桁が最大です。大量のデータをまとめて整理出来る方法は ないでしょうか?よろしくお願いします。
- ベストアンサー
- その他(データベース)
- float double の範囲
javaのサイト見てます データ型にfloat doubleというのがあるのですが、 範囲が float 3.40282347E+38 double 1.79769313486231570E+388 と記載されているのですが これはどうゆう意味でしょうか? 小数点38桁388桁までという意味でしょうか?
- 締切済み
- Java
- C++ での開発環境が安価に入手できるマイコンはありますか?
C++ での開発環境(コンパイラ)が安価に入手できるマイコンはありますか? PIC には、C のコンパイラしかないみたいで、他のマイコンは、あまり知らないのです。 よろしくお願いします。
- ベストアンサー
- C・C++・C#
- phpで小数点型をfloatとdouble型といい
phpで小数点型をfloatとdouble型といいますが なぜ小数点型をfloatと呼ぶんでしょうか? 整数は英語でintegerですが、小数はdicimalですよね
- ベストアンサー
- PHP
- Single→Long変換(ビット配列での変換)
WindowsXP、Visual Basic 6.0(SP6)にて プログラムを作成しております。 やりたいことは、浮動小数点で格納されたSingle型32bitのビット列を、 そのまま整数値に同じビット列として変換したい、ということです。 例えば、12.75であれば、Single浮動小数点の内部形式(IEEE)は 0x414C0000になりますが、この値をそのまま整数値(Long)に変換できればと 考えています。 外部機器(PLC等)と浮動小数点データのやりとりを行う必要があり、 PLCへは単なる16ビットのデータ(0~65535)を整数値として転送するしか ない状況で、上記のような問題に直面しております。 何かアドバイスを頂けますと幸いです。
- ベストアンサー
- Visual Basic
- PIC用のCコンパーラーの組み込み
現在、PICマイコン用Cコンパイラー(デバッカー付き)をインストールしました。しかしながら、ふつうに使用すると、プロンプト画面からいちいちコマンド入力しなければいけないため、統合開発環境であるマイクロチップ社のMPLAB-IDEにCコンパイラ(デバッカ付き)を組み込もう としているのですが、説明書にそれらしいものが見あたりません。誰か、組み込み方を知っている人、教えて下さい。ちなみに、PICのCコンパイラは、(有)データダイナミクスの、PIC Cコンパイラ バージョン3、です
- ベストアンサー
- その他([技術者向] コンピューター)
お礼
詳しい説明ありがとうございました。ペコリ(o_ _)o)) ・・・思っていたより全然桁数は少ないのですね・・・(TOT) 勉強になりました。ありがとうございます。
補足
すいません一つ気になることを思いついたので教えてください。 doubleは4桁しか扱えない(正確でない)ということは、だったら同じ24ビットのunsigned short long型を使って計算(掛け算など)した方が扱える桁数も多いし、正確な数字も出るということでしょうか?