リスキリング|情報技術者への歩み、デジタルを使う側から作る側へ

情報技術者のスキルを身に付け、デジタルを提供する側になれば未来で勝ち組になれると思うので頑張る!

「0と1だけで数を扱う2進数について」わかりやすく解説|基礎理論(基本情報技術者)

amprime.hatenablog.com

|進数とは?

 「進数」とは、数を表現するための基数(進数)を用いた表現方法のことを指します。10進数は、1つの桁につき0〜9までの10種類の数字を用いて数を表現する方法ですが、進数が2の場合は0と1の2種類、進数が16の場合は0から9までの10種類とAからFまでの6種類の合計16種類の数字を用いて数を表現することができます。

 

 進数は、情報処理において非常に重要な概念であり、コンピュータにおいて数値を表現する際に利用されています。例えば、コンピュータは2進数で動作しているため、10進数で表現された数値を2進数に変換する必要があります。また、16進数は2進数に変換する際に便利であり、色の表現などにも利用されます。

 

 進数には、10進数のような人間が使いやすい10進数(デシマル)、2進数(バイナリ)、8進数(オクタル)、16進数(ヘキサデシマル)があります。コンピュータ内部では、2進数で数値を表現しますが、コンピュータ上で操作する際には、10進数や16進数に変換して扱うこともあります。

 

 進数は、数学やコンピュータ科学の分野でよく扱われる概念であり、日常生活においても、身近な例としては時計の表示やデジタル電卓の表示などに用いられています。進数を理解することで、コンピュータの動作原理や情報処理技術を理解することができます。

 

|2進数の仕組みについて

 2進数とは、0と1の2つの数字(ビット)を使って数値を表現する数の表記法のことです。

 コンピュータ内部では、すべての情報が2進数で表されます。

 2進数は、10進数と同様に、桁の重みが異なります。例えば、10進数で「123」は、1は100の位、2は10の位、3は1の位の数字を表します。同じように、2進数でも桁の重みが存在しますが、2進数の場合は2の累乗数であることが特徴です。例えば、10進数で「123」は、100の位の数字が「1」、10の位の数字が「2」、1の位の数字が「3」を表しますが、2進数では、8の位の数字が「1」、4の位の数字が「1」、2の位の数字が「1」、1の位の数字が「1」を表します。

 このように、2進数は、0と1のビットで表現され、ビットの位置によって重みが変化します。2進数は、コンピュータ内部での情報処理に欠かせない基本的な数の表現方法です。

|2進数と10進数には桁上がりの仕組みについて

 10進数の桁上がりは、基数である10に基づいています。1桁目から順に、10を超える数があると、次の桁に1が繰り上がっていきます。例えば、49 + 53 を計算する場合、9 + 3 で12という数値が出てきますが、これは10進数での桁上がりによるものです。10を超える2つの数が足される場合、桁上がりが発生します。そして、繰り上がった1は次の桁の数と一緒に加算されます。この仕組みによって、長い桁数でも計算を行うことができます。

 

 2進数でも同様に桁上がりが発生しますが、基数が10ではなく2であるため、発生する時の数値や加算される数が異なります。2進数では、1桁目から順に、2を超える数があると、次の桁に1が繰り上がっていきます。例えば、1 + 1 を計算する場合、10という数値が出てきますが、これは2進数での桁上がりによるものです。2つの数が足された結果、2を超える場合には、1が次の桁に繰り上がります。そして、繰り上がった1は次の桁の数と一緒に加算されます。この仕組みによって、2進数でも長い桁数でも計算を行うことができます。

 

 このように、10進数と2進数の桁上がりの仕組みは、基数によって異なりますが、基本的な考え方は同じです。どちらの進数でも、1桁目から順に計算し、基数を超える場合には次の桁に繰り上がり、加算されます。

|「n進数」を区別する表現

 「n進数」とは、基数(進数)がnである数の表現方法を指します。

 一般的によく知られているのは、2進数(n=2)、8進数(n=8)、10進数(n=10)、16進数(n=16)などがあります。これらの表現方法を用いることで、コンピューターシステムのデータやプログラムを記述・処理することが可能になります。

 

 例えば、2進数では0と1の2つの数字を用いて数を表現します。10進数で表現された数値を2進数に変換する場合、2で割りながら余りを取る方法があります。また、8進数や16進数も同様に変換することができますが、1桁分の表現に必要なビット数が異なるため、より簡潔に表現することができます。なお、「n進数」を区別する表現には、様々な方法があります。例えば、2進数では数値の後ろに「2」という表記を加えたり、数値の前に「0b」を加える方法があります。同様に、8進数では「8」や「0o」、16進数では「16」や「0x」を用いた表記方法があります。これらの表記方法を利用することで、どの進数を用いた表現なのかを明確にすることができます。

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com