情報:IT
高校生
解決済み

2進数の01110011を16進数で表すとなになりますか?よろしくお願いします🤲

回答

✨ ベストアンサー ✨

一旦、前後を4ビットずつに分けて考えます。括弧内の数字は進数を意味します。

前:0111(2) = 7(16)
後:0011(2) = 3(16)

前後を再び繋げて、
01110011(2) = 73(16)
となり、これが答えとなります。

■検証
出てきた答えが正しいか、検証してみましょう。

01110011(2) = 1 x 2^6 + 1 x 2^5 + 1 x 2^4 + 1 x 2^1 + 1 x 2^0
= 64 + 32 + 16 + 2 + 1
= 96 + 18 + 1 = 114 + 1
= 115(10) —①式

73(16) = 7 x 16^1 + 3 x 16^0
= 112 + 3
= 115(10) —②式

①式と②式の十進数の値が同じですので、答えは正しいと検証出来ました。

■補足1.ビットを分ける理由
なぜ、前と後ろに4ビットずつ分けるのかと言うと、

まず、16進数とは、10進数の0から15を、次のように英数字で表したものです。

{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}

この最後の「 F 」は、10進数では「 15 」ですが、2進数では「 1111 」となります(貴方が右利きの場合は、親指から折って、人差し指、中指、薬指と折るを繰り上げます。貴方が左利きの場合は薬指から折ると分かりやすいでしょうか?)

つまり、4ビット「 1111 」で16進数を表現できるため、前後4ビットで分けています。

■補足2.早く計算するために
2ビットを10進数に変換するために、以下の2つの結果を覚えておきます。

2^6 = 64
2^10 = 1024

覚え方は、
「2の6乗は、6から始まる64」
「2の10乗は、10から始まる1024」
と、言葉で暗唱しましょう。

すると、近くのビットは掛けたり割ったりするだけですみます。

例.2^5 = 64 ÷ 2 = 32
例.2^11 = 1024 x 2 = 2048

この回答にコメントする
疑問は解決しましたか?