• ベストアンサー

2進数→10進数

(1)2進数の0.101を10進数に (2)2進数の1001.01を10進数に 解き方が全くわかりません。 どなたかよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • sanori
  • ベストアンサー率48% (5664/11798)
回答No.3

こんばんは。 たとえば、 1011 という2進数があるとき、 8の位が1 4の位が0 2の位が1 1の位が1 と考えます。 ですから、1011(2進数)= 8+2+1(10進数) です。 そして、位が1つ下に行くにしたがって、半分になるのですから、 小数点以下は、0.5の位、0.25の位、0.125の位・・・となっていくわけです。 私はこのことを説明するとき、よく 8円玉、4円玉、2円玉、1円玉、0.5円玉、0.25円玉、0.125円玉・・・ というふうに例えます。 (1)は、0.5円玉1枚、0.125円玉1枚なので、 0.5+0.125 です。 こう言われてみると、簡単でしょ? 以上、ご参考になりましたら幸いです。

その他の回答 (4)

  • bgm38489
  • ベストアンサー率29% (633/2168)
回答No.5

2進数の10は2、100は4、1000は8ということはわかりますね? 残るは小数ですが、10進数の0.1は1/10、0.01は1/100ですね? それと同じです。2進数の0.1は、2進数で表記すれば1/10、10進数で表記すれば1/2です。0.01は1/100、即ち1/4―

  • rnakamra
  • ベストアンサー率59% (761/1282)
回答No.4

整数の場合は可能という前提でお話します。 10進数の0.1に10進数の10を掛けると小数点が一桁ずれて1になります。 同様に、 2進数の0.1に2進数の10を掛けると小数点が一桁ずれて1になります。 この考え方で進めると、 0.101*1000=101(全て2進数) となります。 つまり、 0.101=101/1000(全て2進数) となります。 後は、101,1000を十進数に変えれば 0.101(2進数)=5(10進数)/8(10進数)=0.625(10進数) となります。 (2)も全く同様に解けます。 ちなみに、2進数で有限の桁数の小数は10進数でも小数点以下の桁数は同じ数の小数になりますが、10進数の小数は2進数で無限小数になることがあります。(十進数の0.1は2進数で無限小数になります。) 10進数だろうが2進数だろうがn進数だろうが1*10=10であり、0.1*10=1なのです。それだけ判っていれば応用は可能です。

回答No.2

10進数の21という数字は (2x10^1)+(1x10^0) というのはいいですか?見やすくするためにカッコでくくりました。 10^1は10の1乗という意味です。 2.1の場合は 2x10^0+1x10^(-1) (小数になると乗数がマイナスになります。) 2進数の場合も同じで、10の部分が2になるだけです。 たとえば、0.101は 0x2^0+1x2^(-1)+0x2^(-2)+1x2^(-3) となります。 ちなみに Xの (-n)乗というのは、1/(X^n)のことです。念のため。

  • info22
  • ベストアンサー率55% (2225/4034)
回答No.1

サイトのマナー注意事項に書かれていること。 --------------------- 基本的なマナーとして、ご自身である程度問題解決に取り組まれた上での疑問点や問題点、お困りの点を明確にしてご投稿いただきたい --------------------- 補足にあなたのやられたことを書いた上で、行き詰って分からないことだけ質問するようにして下さい。 ヒント) 桁の重みを掛けて加えればよい。つまり、桁が1のところの桁の重みを加えていけばいいことになります。 (1)(1/2)+(1/8)= の計算をするだけ。 (2)8+1+(1/4)= の計算をするだけ。

関連するQ&A