締切済み 固定小数点で0.1? 2002/05/24 01:57 10進から、2進数、16進数に変換するのによくわからないことがあります。 固定小数点で0.1はどのように表せるのでしょうか? どなたかわかりやすく教えてください。お願いします。 みんなの回答 (2) 専門家の回答 みんなの回答 haporun ベストアンサー率40% (230/562) 2002/05/24 11:19 回答No.2 固定小数点型としては、VC++ではCurrencyやDecimalが構造体、クラスとして用意されています。 固定小数点数は、整数の情報と小数点がどの数字と数字の間にあるかという情報を記録します。 自分で作るとしたら struct FIXED_DECIMAL{ int num, digit; }; がnum*10^digitをあらわすような感じ。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 takebou ベストアンサー率43% (27/62) 2002/05/24 02:26 回答No.1 2進数で考えると、整数の場合、2の0乗、2の1乗、2の2乗・・・となりますよね。 固定小数も考え方は同じで、2の-1乗、2の-2乗・・・となります。 8ビットで考えると、 +0.5なら、 01000000 +0.25なら、00100000 +0.125なら、00010000 負の数なら、これらの数字の2の補数を取れば良いだけです。 つまり、0.1ちょうどという数は表せません。 質問者 お礼 2002/05/24 13:21 あるプログラムでの閾値で0.1を使おうとしたらこのような問題にぶつかりました。 考え直して見ます。 ありがとうございました。 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピュータープログラミング・開発C・C++・C# 関連するQ&A 固定小数点、符号ビットを用いた方法 固定小数点、符号ビットを用いた方法 -0.1234や-12.3456などの10進数を2進数に変換する場合、固定小数点、符号ビットをどのように設定してよいのかわかりません。 固定小数点と浮動小数点 電算機の小数点認識に固定小数点と浮動小数点というのがあると聞きました。前者は分かるのですが、浮動小数点のWikiとかの記述を見てもあまりピンときませんでした。わかりやすい説明はないでしょうか。 固定小数点形式について -15を8ビットの固定小数点形式(16進数表示)で 表すとなると、まず-15を 2進数(00001111)→1の補数 11110000 →2の補数 11110001にしてから 16進数(F1)に答えを導けばよいのでしょうか? 数値が違うなどのご指摘もお願いいたします。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム 浮動小数点表示と固定小数点表示 固定小数点0.00128を浮動小数点表示すると0.128×10^-2と学校で習ったのですが、1.28×10^-1や128×10^-5としてはいけないのでしょうかどなたか教えてください。 進数の小数点をどう変換するのか 現在進数の小数点で詰まってます 2進数⇒10進数へ変換するときは 11.01011⇒ 1*2~1+1*2~0+0*2~-1+1*2~-2+0*2~-3+1*2~-4+1*2~5 2 +1 +0 +0.25 +0.125 +0.625 +0.3125 3+1.3125 4.3125 2進数⇒16進数へ変換するときは 11.01011⇒ B.0 |8+0+2+1| B.0B で良いと思ってます(間違ってたらすいません) ここで本題なんですが、小数点を含んだ進数で 2進数⇒8進数 8進数⇒2進数 10進数⇒2進数 16進数⇒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」と書いた場合にしか浮動小数点演算されないということではないと思っているのですが、実際の浮動小数点演算と固定小数点演算の内部的な切り替えがわかりません。 理解が足りなくて、おかしな質問になっていましたら、その点もご指摘いただければうれしいです。 2、8、10、16進数に変換(小数点) 10進数や2進数や8進数や16進数に変換する場合、 小数点以下を変換できません。 方法はありませんか? 小数点⇔n進数のやり方 いつもお世話になっております。 早速ですが、VB2008にて小数点⇔n進数のやり方がわからず困っています。 16進数 404ccccd 10進数 1078774989 2進数 1000000010011001100110011001101 小数点に変換すると3.2になるはずですが、やり方がわかりません。 CONVERTやbitconverter等試してみたのですがうまくいきません。 ネットで検索し、小数点からn進数は見つけたのですが、逆の方法が見つかりません。 逆演算すればとも思ったのですが、いまいちうまくいかず質問させていただきました。 宜しくお願いいたします。 固定小数点数、浮動小数点数について 学校から課題が出ているのですがさっぱりなので教えていただければ幸いです。 課題:11051120 この数を32bitの固定小数点数、浮動小数点数であらわせ (1)固定小数点数、浮動小数点数とは何か (2)数値をあらわすための手順 この2点を教えてください。 1~10まで教えろとは言いません。ただ、やろうにも全くわからないので、ヒントだけでもいただけたらと思っています。 提出期限は10日までなので、よろしくお願いします。 浮動小数点変換 (1)次の数値をIEEE754単精度形式で正規化された浮動小数点に変換し、結果を8桁の16進数で表記しなさい。 (a)0.5 0.5を二進数で表すと0.1 0.1*2^0であるから 0 00000000 10000000000000000000000 (b)1.0 1.0を二進数で表すと1.0 0.1*2^1であるから 0 10000000 10000000000000000000000 (c)1.25 1.25を二進数で表すと1.010 0.101*2^1であるから 0 10000000 10100000000000000000000 浮動小数点への変換、あってますでしょうか? また結果を8桁の16進数で表記とありますが 0.5だったら16進数で表すと0.9?これを8桁*16^なんとか乗で表すということでしょうか? 浮動小数点法での2進数変換 浮動小数点法を用いての2進数への変換に関して質問です。 10進数の(-0.0001)を浮動小数点表示を用いて2進数に変換しなさいという問題が全くわかりません。 どなたか詳しく解説してください。お願いします。 10進数の14.5を浮動小数点(IEEE754形式)の2進数に変換するにはどうしたらよいでしょうか? 10進数の14.5を浮動小数点(IEEE754形式)の2進数に変換するにはどうしたらよいでしょうか? 10進数の-7.5を浮動小数点(IEEE754形式)の2進数に変換するにはどうしたらよいでしょうか? 計算方法を教えてください。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム JSP double型を使った小数点。 質問させて下さい。 JSPでdouble型を使って、小数点の許可をしています。 「1.5」、「2.5」などの小数点の付く数の場合はよいのですが、 「1.0」、「2.0」と小数点の付かない数のも「.0」と付いてしまいます。 「1」、「2」と表示させる事はできないでしょうか? どなたかご指導宜しくお願いします。 浮動小数点の正規化の必要性について 浮動小数点の正規化の必要性について教えてください。 浮動小数点で数を表す際に、正規化は必ずしも必要なもの(行わなければならないもの)なのでしょうか? また浮動小数点の正規化のルールとして、 2進数か16進数に変換したとき 「指数部を調整して、仮数部の最上位けたを“0以外にする”」というルールがあるようなのですが、何故「指数部を調整して、仮数部の最上位けたを“0以外にする”」という処理が必要となるのでしょうか? 単精度浮動小数点方式、16進数 10進数で22.75で表される値を単精度浮動小数点方式で表現し,それを16進数に変換するとどうなりますか? 22.75(10)→1.421875 4+127=131=10000011(2) 0.421875=0.011011(2) ここからのやり方教えてください IEEE754浮動小数点規格 14.625をIEEE754浮動小数点規格の単精度(float)の書式(-1)^s ×1.f×2^(e-127)に直す場合、この値をとりあえず2進数に直すのですが、 14.625=+1110.101となると書いてあったのですが、 14を二進数に変換すると1110になることはわかるのですが、625がなぜ、101になるのかわかりません。僕自身、単に625を計算したら、101110001になりました。どう625を2進数に変換したらよいですか。 小数点のずらしかた バカな質問ですが、小数点のずらしかたが分かりません。 例えば、4÷1.6=2.5=小数なのに、28÷0.5=56整数になります。 どうして答えが小数点になったり、整数になったりするのでしょうか。 計算する時、どうやって小数点をずらせばいいのでしょうか。 小数点 小数を表す時に小数点が無くてもわかるって人いますかね?流石にいませんかね?小数点がない方がわかりやすい人っていますかね? コンピュータ小数点2進数 ・コンピュータ内で「小数点以下を含む数」をデータとして表現する方法についてまとめよ。 (コンピュータ内で、メモリに記録される0と1の列によって小数点以下を含む数を表すのにどのようなルールが用いられているのか、つまり小数点以下を含む数のためのデータ解釈のルールを問う) このような問題あなたならどう回答を出しますか?? 浮動小数点の問題が解りません。 浮動小数点の問題が解りません。 10進数の(46.625)を最終的に16進数で表したいと思っています。2進数の(101110.101)までもっていき、小数点より上の部分は(2E)というところまでは解りました。ですが(.101)の部分が解答ではAとなっているのですがどのように算出したらいいのか解りません。どなたか教えてください。よろしくお願いします。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター プログラミング・開発 Microsoft ASPC・C++・C#CGIJavaJavaScriptPerlPHPVisual BasicHTMLXMLCSSFlashAJAXRubySwiftPythonパフォーマンス・チューニングオープンソース開発SEOスマートフォンアプリ開発その他(プログラミング・開発) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など
お礼
あるプログラムでの閾値で0.1を使おうとしたらこのような問題にぶつかりました。 考え直して見ます。 ありがとうございました。