今年の4月にHappyLifeCreatorsに入社した、エンジニアの信尾海翔です。
初めてのブログということで緊張しております、よろしくお願いいたします。
今回のテーマは進数です。
進数については、高校の授業や専門学校時代に学んだのですが、
最近、仕事で改めて進数に触れる機会があり、復習も兼ねてブログにまとめようと考えました。
進数とは
あらかじめ決められた種類の数字を使って数を表す方法です。
〇進数の〇のX乗ごとに桁が上がります。
私たちがいつも使っている1,2,3,4,5,6,7,8,9,10…100…1000などは
10の〇乗ごとに桁が上がるので10進数とも呼ばれます。
他にも良く使われるものとしては2進数、8進数、16進数などがあります。
2進数の場合、2の〇乗ごとに桁が上がります。
…0 → 1 → 10 → 11 → 100…
↑
2の1乗で桁が上がる
8進数の場合、8の〇乗ごとに桁が上がります。
…6 → 7 → 10 → 11
↑
8の1乗で桁が上がる
16進数の場合は16の〇乗ごとに桁が上がります。
…9 → A → B → C → D → E → F → 10
↑
16の1乗で桁が上がる
※16進数の場合
9を超える値から15までの値をアルファベットで表します。
1 → 2 → 3 → 4 → 5 → 6 → 7 → 8 → 9 → A → B → C → D → E → F →10
進数の変換
続いては進数の変換になります。
今回は例として、10進数の255を2進数に変換して、8進数、16進数などに変換したいと思います。
10進数から2進数へ変換
2進数は2の〇乗ごとに桁が上がるので
10進数の値: 128 64 32 16 8 4 2 1
2進数の値: 1 1 1 1 1 1 1 1
128+64+32+16+8+4+2+1 = 255
2進数では255を11111111として表せます
2進数から8進数へ変換
8進数の1桁で2進数の3桁までを表すことができるので
2進数を3桁のグループごとにわけて考えます。
11111111をおしりから3つごとにまとめると
011 ,111 ,111の三つのグループになります。
これをそれぞれ8進数に変換すると
011 → 3
111 → 7
111 → 7
並べると377となり、255を8進数で表した値になります。
2進数から16進数へ変換
16進数の1桁で2進数の4桁までを表すことができるので
2進数を4桁のグループごとにわけて考えます。
11111111をおしりから4つごとにまとめると
1111 ,1111の二つのグループになります。
これをそれぞれ16進数に変換すると
1111 → F
1111 → F
並べるとFFとなり、255を16進数で表した値になります。
余談
進数の変換は基本情報技術者試験の勉強をしていた時によく練習していたのを覚えています。
通り過ぎる車のナンバーが簡単な数値なら二進数に変換してみたり…
買い物した後のお釣りを二進数に変換しようとしたり…など
今回は以上となります。
次回は論理演算についてブログでまとめる予定です。