どうも、なかしー(@nakac_work)です。
僕は自動車や家電を動かしているコンピューターのプログラミングの仕事をしています。
実は僕たちが使っているパソコンやスマホなどのコンピューターは0と1しか理解できません。あなたが見ているスマホやパソコンの文字や画像は0と1を組み合わせて表示されています。
このマークを見たことはないですか?
これは電源のマークです。電源のマークは0と1を元にデザインされています。
プログラミングでは0と1の組み合わせで表す2進数や0からF(15)の組み合わせで表す16進数がよく出てきます。
2進数と16進数の考え方はプログラミングでとても大切です!
この記事では「2進数/10進数/16進数の考え方と変換方法」について、エンジニアの僕が解説します。
パソコンで簡単に変換する方法があります。考え方が大切なので、しっかり理解しておきましょう!
- 2進数と16進数について
- 2進数を10進数に変換する方法
- 2進数を16進数に変換する方法
タップできるもくじ
2進数と16進数とは?
いきなり2進数と16進数を説明する前に10進数を理解すると分かりやすいと思います。
10進数は僕たちがお金や物の数を数えるときに使っています。
9から10になるときは1の位が0になって、10の位が1増えます。
10で上の位が1進むのが10進数です。
一番身近な時計は何進数か考えてみましょう。
- 秒の針→60進数
- 分の針→60進数
- 時の針→12進数
ちなみに1日は24時間なので24進数です。
では、本題の2進数と16進数はというと
- 2進数・・・1から2になる時に、上の位が1増える
- 16進数・・・1から16になる時に、上の位が1増える
0から9までの対応表はこんな感じです。
10進数 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
---|---|---|---|---|---|---|---|---|---|---|
2進数 | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 |
16進数 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
少し難しいのが16進数の10から15までの表し方です。
10進数 | 10 | 11 | 12 | 13 | 14 | 15 |
---|---|---|---|---|---|---|
2進数 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
16進数 | A | B | C | D | E | F |
16進数では10から15までにAからFまでのアルファベットが割り当てられています。
2進数を10進数に変換する方法
2進数を10進数に変換したいのであれば、位に応じた数と2進数のかけ算をして合計を求めればOKです。
例えば、2進数の(1111)を10進数に変換する場合
答えは、10進数で(15)になります。
反対に10進数を2進数に変換したい場合も紹介します。
位の大きさで割る。
割ることができなければ0で、それ以外は1としましょう。割ることができたならあまりを次のくらいの大きさで割っていきます。
例えば、10進数の(14)を2進数に変換する場合
答えは、2進数で(1110)となります。
2進数を16進数に変換する方法
2進数から16進数に変換する場合は、一度10進数に変換すると簡単になります。
計算は10進数と計算するときと同じです。
例えば、2進数(1111)を16進数に変換する場合
反対に16進数(0E)を2進数に変換する場合
パソコンの電卓で簡単に変換できる
windowsなら電卓をプログラマーモードにすれば、2進数から16進数に簡単に変換できます。
モードの切り替えは、
①左上の三本線(メニュー)を押す。
②プログラマーを押す。
電卓の左側にある英語は次のようになってます。
- HEX→16進数
- DEC→10進数
- OCT→8進数
- BIN→2進数
2進数/10進数/16進数の考え方と変換方法|まとめ
この記事では「2進数/10進数/16進数の考え方と変換方法」について紹介しました。
2進数と16進数の特徴は次のとおりです。
- 2進数・・・数を0と1で表す方法。
1から2になる時に上の位が1増える。 - 16進数・・・数を0と15で表す方法。
15から16になる時に上の位が1増える。
10から15まではA~Fまでのアルファベットを使う
パソコンの電卓機能を使えば、簡単に2進数から16進数などに変換することができます。