「1101(2)」という2進数を10進数になおす場合、僕はこう考える。
2の0乗の位=1の位
2の1乗の位=2の位
2の2乗の位=4の位
2の3乗の位=8の位
・
・
・
8が"1"つ、4が"1"つ、2が"0"つ、1が"1"つ
全部足して13。だから1101(2)は10進数では13になる。
つまるところ、私の頭は
「10進数で日常的にやっていたことを2進数に置き換えて考える」
ことでイメージをわきやすくしているのだと思う。
10進数で考えるとこうだ。
例えば10進数で「8191」は
10の0乗の位=1の位
10の1乗の位=10の位
10の2乗の位=100の位
10の3乗の位=1000の位
・
・
・
1000が"8"つ、100が"1"つ、10が"9"つ、1が"1"つ。
"○の位に数字が×個"
この考え方の基礎は小学校で繰り上がり・繰り下がりを学ぶ際に
覚えるはずだ。
こんなアプローチをしていたので、学校のテストなんかで
基数変換の問題が出ると僕はよく各桁の上に数字を書いていた。
問)次の数字を10進数に変換しなさい。
16 8 4 2 1 ① 1 0 1 0 0 (2)
64 16 4 1 ② 1 0 3 2 (4)
赤字が僕の書く数字=位の数字となる。
縦同士の数字をで掛け算して、最後にそれらを足し合わせれば
答えが出るわけだ。
予め各基数の位さえ頭に入れておけば基数変換の問題はこれで瞬殺できる。
…10進数を他の基数に変換する場合はもっと楽な方法があるんだけどね。
以上、たまには数字と仲良くなりたい純文系人間のたわごとを書いてみました(笑)
これを読んでる理系の人、笑わないでねっ(/_\)
EBI
スポンサーサイト