目的
今回は「進数」について解説します。私が普段実務をしていてこの計算が求められることは基本ないのですが「基本情報技術者試験」など試験では頻出です。
最初の方は難しく感じますが、これに関しては慣れが大切だと思います。コンピュータはこうやって数値を表現しているんだと感じながら進めていってください。
10進数とは
私たちが普段馴染みのある数字の扱い方で、「0〜9」の10種類の数字を使用します。
「0」「1」「2」「3」.....「9」の後、繰り上がって「10」になります。
2進数とは
コンピューター内部では「0」と「1」の2つの状態を使って情報を扱っています。
例えば電気回路では、
- 0 → 電気が流れていない
- 1 → 電気が流れている
のように、2つの状態を使って情報を表せます。
だからコンピューターの中では、文字・画像・音・数字など、いろいろな情報が最終的に0と1の組み合わせ(2進数)として扱われています。
「0」「1」「10」「11」「100」......といった形になり1の後に繰り上がります。
コンピュータはこの「0」「1」のみで、コンピュータ上の全ての機能を実現します。
16進数とは
2進数をより人間に分かりやすい形で表現した方法で「0〜9」「A〜F」の16種類を使用します。
「0」「1」「2」「3」......「A」「B」「C」......「F」「10」となり、Fの後に繰り上がります。
2進数はコンピュータにとって表現しやすく、10進数は人間にとって表現しやすい中で16進数はその中間にあたるコンピュータ、人間どちらにとっても理解しやすい表現です。
進数の変換
2進数→10進数、2進数→16進数など変換することができます。
普段はもちろん、実務で使うことはないのですが「基本情報技術者試験」など試験の問題としてはよく出てきます。これに関しては計算方法を暗記したほうが楽だと思います。
以下例です。
2進数 → 10進数の変換
(例)2進数「1010101」の場合

10進数 → 2進数の変換
(例)10進数「100」の場合

2進数 → 16進数の変換
(例)2進数「1010101」の場合

16進数 → 2進数の変換
(例)7AFの場合

まとめ
いかがだったでしょうか。2進数に関しては、IPアドレスの計算でも出てきます。今後も頻出になってくるのでしっかり覚えておいてください。

No responses yet