dポイントプレゼントキャンペーン実施中!

2進数の10111.101がどうして17,Aになるのですか?
教えてください。

A 回答 (3件)

小数点を境にして、2進のビット列を3桁区切りにして、個々の3桁を10進化するのが8進法です。


一方、小数点を境にして、2進のビット列を4桁区切りにして、個々の4桁を16進1桁に割り当てるのが16進法です。

だから、今は16進化の場合を考えているので
小数点を境に、4ビット区切りで区切って下さい。
ビットの桁が不足する場合は後ろにゼロを補って4ビットを作ります。
そして、4ビット区切りにしたものを16進1桁の文字で置き換えていきます。

.101
は小数以下が3ビットしかありませんから、後ろに「0」を補って4ビットの組にします。
.1010
そうすれば
.A
で置き換えられるでしょう?

お分かりですか?
    • good
    • 0

10111.101


4ビットの倍数に書き直してみます。
0001 0111.1010
これを4ビットずつ16進で読むと
17.Aになりますね。
    • good
    • 0
この回答へのお礼

小数点以下は3ビットの区切るって言われたのですが、それは間違いですか?

お礼日時:2008/06/23 20:54

10111.101


=2^4 * 1 + 2^3 * 0 + 2^2 * 1 + 2^1 * 1 + 2^0 * 1 + 2^(-1) * 1 + 2^(-2) * 0 + 2^(-3) * 1
=16 + 0 + 4 + 2 + 1 + 1/2 + 0 + 1/8
=16^1 * 1 + 16^0 * 7 + 16^(-1) * 10

よって
17.A
    • good
    • 0
この回答へのお礼

101の部分がAになる理由がよくわかりません。

お礼日時:2008/06/23 20:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!