プロが教える店舗&オフィスのセキュリティ対策術

(0.171875)10進数を16進数に変換せよ
解き方を教えてください

A 回答 (4件)

No.2 です。


誤植がありましたね。

最後の

>よって
>0.171875[10] = 0.2C[10]



**********

よって
0.171875[10] = 0.2C[16]

**********

に訂正します。
    • good
    • 0

n 進数の「abcde.fgh」とは



 a × n^4 + b × n^3 + c × n^2 + d × n^1 + e × n^0 + f × n^(-1) + g × n^(-2) + h × n^(-3)
(ただし 0 ≦ a~h ≦ n-1)

ということだということを理解していますか?

これさえ分かっていれば、何進数かを [ ] で示すとして、結果が
0.abcdefg[16] と表せたとすると

0.171875[10]
= 0.abcdef[16]
= a × 16^(-1) + b × 16^(-2) + c × 16^(-3) + d × 16^(-4) + e × 16^(-5) + f × 16^(-6)

ということになります。

これからわかることは、

(1) まずこれに「16」をかければ
0.abcdef[16] × 16 = a × 16^0 + b × 16^(-1) + c × 16^(-2) + d × 16^(-3) + e × 16^(-4) + f × 16^(-5)
で、「a」が整数部に現れます。

ここから a[16] を引けば
 残り(1)[16] = b × 16^(-1) + c × 16^(-2) + d × 16^(-3) + e × 16^(-4) + f × 16^(-5)

(2) この「残り(1)[16]」に「16」をかければ
残り(1)[16] × 16 = b × 16^0 + c × 16^(-1) + d × 16^(-2) + e × 16^(-3) + f × 16^(-4)
で、「b」が整数部に現れます。

ここから b[16] を引けば
 残り(2)[16] = c × 16^(-2) + d × 16^(-3) + e × 16^(-4) + f × 16^(-5)

(3) この「残り(1)[16]」に「16」をかければ・・・・

ということを続けていけば、16進数の各桁の値が求まっていきます。
実際には、0.171875[10] に 16 をかけて行って、整数部に出てくる数を16進数に変換していけばよいです。

#1 さんは、これをまず「2進数」でやって、それを「16進数」に変換していますが、直接16進数に変換することも可能です。

やってみれば
0.171875[10] × 16
= 2.75[10]
従って、小数1桁目は「2」。

これから「2」を引いた残りに 16 をかけて
 0.75[10] × 16 = 12
従って、小数1桁目は「12」。
これを「16進数」の数字にあてはめれば「C」です。

これで残りは「0」なので、これ以下の小数桁はありません。

よって
0.171875[10] = 0.2C[10]

(注) 16進数では、「0~15」に対応する数字がないといけないので
 10 → A
 11 → B
 12 → C
 13 → D
 14 → E
 15 → F
と表記することはご存じですよね。
    • good
    • 0

0.171875×16=2.75→2


0.75×16=12→C

答=0.2C
    • good
    • 1

10進数を2進数に。

2進数を16進数にします。
0.171875×2→0.34375→整数部0
0.34375×2→0.6875→整数部0
0.6875×2→1.375→整数部1
0.375×2→0.75→整数部0
0.75×2→1.5→整数部1
0.5×2→1→整数部1
2進数表記は、0.001011
4桁区切にすると、0.00101100
16進数は、0.2C
    • good
    • 0

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