2進数を16進数に直す方法


10進数を2進数に変換する方法は、関数電卓を使った方が早い。
10進数を16進数に変換する方法も、関数電卓を使った方が早い。
但し…。
2進数を16進数に変換する方法は、
指で計算する方が圧倒的に早い。
特に、机上では。
ここでは、簡単に机上で2進数を16進数に直す方法を紹介する。
16進数から2進数に直す方法も、この逆を辿ればいいし。


例題:11010110100110100010110


解法1:何も言わずに、右から4つずつに分けてしまえ。

つまり、こう言う風に分けてしまう。
110 1011 0100 1101 0001 0110
こう言う風に分けてしまえば、
ここでは6つの塊に分けることができたが、
それぞれの塊を16進数に直すだけで、
求める答えができてしまうからである。
つまるところ、
2進数4ケタ=16進数1ケタなのだ。
これは鵜呑みにして覚えていただきたい。
便利だもん。


解法2:それぞれの塊を16進数に直す。

直接解法を伝授する前に、
まずはあなたの右手を取り出して欲しい。
使うのは、親指と人差し指と中指と薬指。
そこで、これを頭に入れて頂きたい。
親指は1人差し指は2中指は4薬指は8
視覚的にも分かりやすいように順番を入れかえると、
薬指は8中指は4人差し指は2親指は1、となるのだ。
これで、この4本の指を使って1〜F(10進数で言う15)を数えてみよう。

これがやり方

絵を見てくれれば、 俺の言いたいことは大体分かるだろう
青文字が16進数、 赤文字が2進数を表す。
で、指が立っているところが2進数の1を表すのだ。

この動きをマスターするだけでよいのだ。
ほら、じっとしないでディスプレイを見ながら反復練習をしろ。
動きが単調なだけに覚えやすい。
そう、16進数を指で覚えるのだ
こんなもんを脳みそで覚えようものなら間違いなく右脳が爆発してしまう

これが覚えられたらこっちのもん。
まず一番右の塊から見ていこう。
0110だよな。
つまり、薬指がなくて中指がある人差し指もある親指はない
だから、中指人差し指の時の数字なのだ。
いちいち中指が4、人差し指が2なんて計算してもいいが、
指を動かした方が圧倒的に分かりやすく、確実でもある。
そうやっていくと、これはであることが分かる。
文章で説明するとどうしてもこうなってしまう。
しかし、上の絵の16進数の覚え方を参照すれば、
一瞬で判明するだろう。
次に、0001
同じようにやっても良いし、まっすぐと出してもいい。
今度は1101だ。
薬指中指親指の3本が立っているときだ。
これも同じように1,2,3,…と指を立てたり折ったりしながら数えていくと、
だということが鮮明に分かる。

同様にやっていけば…
110 1011 0100 1101 0001 0110


となることが容易に分かるだろう。よって、
正解は#6B4D16となるワケ。


要は、

2進数を4桁の塊に分解する

其々の4桁の塊を指を使って16進数に変換

こんな感じだ。


練習問題

1) 1010010001100

2) 100110010100100100110100101011110101

3) 10110101001010010110101101100110110011010110110110110101

こたえ

1) 148C

2) 994934AF5

3) B5296B66CD6DB5