n進数って何だろう?

今回は、まずコンピューターサイエンスの基礎である「進数」について勉強していきます。

 

コンピューターが利用できるのは、0と1のみとなります。


基本表現である「2進数」とは。
2倍ごとに位が進む => 0、1、10、11 、100...となります。

 

ただし!私たちの世界では、もっと多くの表現内容がありますよね。
これを表すために「n桁ずつ進む数(nは基数:基本となる数)」を活用します。

私たちに馴染みがあるのは、10進数ですね。
10倍ごとに位が進む => 0、1、2、3、4、5、6、7、8、9、10、11...

 

その他にも以下のような表現はよく利用されます。

8進数
 8倍ごとに位が進む   => 0、1、2、3、4、5、6、7、10、11... 

16進数

 16倍ごとに位が進む => 0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F、 10...

 

 

⭐️8進数や16進数は、何がいいのか。
それは、

2進数で表現できる情報を、より少ない数で表現できる。

と言うことです。

 

2進数で1桁を表すには、1bitが必要になります。

すると、8進数の場合、2進数の3bitに該当する表現が、「1桁」で表現可能となります。
16進数の場合、2進数の4bitに該当する表現が、「1桁」で表現可能となります。


例)10を表現したい場合。
2進数 => 1010
8進数 => 12
16進数  => A

 

現在の主流が、4の倍数ビット数(32bit 64bit)で処理しているため、
16進数が相性がいいと言うことになります。

 

上記内容からの考察として、表現方法が少ないと言うことは、

コンピューターの処理する情報が少ない為、処理速度は向上すると言うことですね。

 

技術内容の発信において、色々な方のご意見いただけると嬉しいです。

間違っている点など、ご指摘などもあれば、よろしくお願いします。

 

最後まで読んでいただき、ありがとうございました!