どうも、irisawaです。
今日は、基礎知識(n進数)についてです。この授業の目的としては「コーディングをしている時、サーバーの設定作業時、何らかの作業時に、2進数や16進数を理解して使いこなせるようにするため」です。
以下、内容になります。
まず、最初にn進数とは何かについて学びました。n進数とは、各桁にn種類の数字(文字)を用いる数の表現形式です。
- 10進数
- 我々にとって、一番馴染み深い表現形式。 例: 1、2、3、4、5、6
- 2進数
- コンピュータに、一番馴染み深い表現形式。ビット。 例: 0101、1101
- 16進数/8進数
- 人間にとってある程度見やすく、かつコンピュータにも割と都合がいい表現形式。 例(16進数): A1、FF、2B
なぜ、2進数が使われる?
- 「0」と「1」で表現される2進数は、電圧の低い・高いという電気信号に容易に置き換えられる為。
- 雑音、外的環境の変動に対してもっとも影響を受けにくい。
その後、2進数→10進数、16進数→10進数への変換をし、その逆も行いました。
また、PHPでも同様の変換をしました。PHPでの表現方法は以下の通りです。
- PHPでの2進数の表現
- 例: 0100 → 1 << 2 こう書く事で最初のビットが2つ左にずれ0100となり、2進数を表現する事が出来る。このビットをずらす行為の事を、ビットを立てるという。
- PHPでの16進数の表現
- 例: 91(16進数) → 0x91 この記述だけで、16進数としてPHPの方で認識される。
今後、ネットワークの設定などで2進数や16進数をバリバリ使う事になっていくと思うので、慣れていきたいと思います。
次回の授業では、負の2進数や2の補数などを行うそうです。

コメントをどうぞ