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

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

「基数・基数変換」についてわかりやすく解説(その2)|基礎理論(基本情報技術者)

amprime.hatenablog.com

|8進数について

 8進数とは、1桁あたりが0~7までの8つの値で表現される数のことです。10進数と同じように、数値の桁が左に1つずつ移動するごとに、値が8倍されていきます。つまり、8進数の各桁の重みは、右端から順に1、8、64、512、4096となります。8進数は、主にコンピュータのファイルパーミッションなどで使用されています。2進数よりも桁数が少なく、16進数よりもわかりやすいため、特にファイルパーミッションの表記によく使用されます。

 

|2進数から8進数への基数変換の方法

 2進数から8進数への基数変換の方法は、2進数の数値を3桁ずつグループに分け、各グループを8進数に変換することで行います。この方法は、2進数から16進数への変換と似ていますが、8進数は3桁ごとに区切るため、変換に必要な桁数が少なくなる点が異なります。

 

 例えば、「11011010101100101」という2進数を8進数に変換する場合、先ほどと同様に、3桁ずつグループに分けます。「110」、「110」、「101」、「011」、「001」、「01」となります。そして、それぞれの3桁の2進数を8進数に変換します。2進数の桁を、8進数の桁に変換するときには以下の表を使うと便利です。

 

 2進数 8進数

  000  0

  001  1

  010  2

  011  3

  100  4

  101  5

  110  6

  111  7

 

 「110」は6、「101」は5、「011」は3、「001」は1、「01」は1となります。それらを順番につなげることで、8進数の「65311」という数値を得ることができます。したがって、「11011010101100101」という2進数は「65311」という8進数に基数変換されます。

|16進数について

 16進数は、0から9までの数字とAからFまでのアルファベットを用いて表現される数のことを言います。16進数は、2進数を簡単に表現するために使用されます。つまり、2進数で表現された数値を4桁ずつグループ化して、各グループを16進数で表現することができます。例えば、2進数の1111 0101 1010 0011を16進数で表現すると、FA53となります。16進数は、コンピュータやプログラミングなどの分野で広く使用されています。

 

|2進数から16進数への基数変換の方法

 2進数から16進数への基数変換は、まず2進数を4桁ずつに区切り、それぞれを16進数に変換して結合する方法で行います。具体的には、以下の手順を実行します。

 

1.2進数を4桁ずつ区切る。

 例えば、11011010101100101という2進数を4桁ずつ区切ると、1101 1010 1011 0010 となります。

2.それぞれの4桁の2進数を16進数に変換する。

 4桁の2進数を16進数に変換するには、次の表を用います。

 

 2進数  16進数

  0000  0

  0001  1

  0010  2

  0011  3

  0100  4

  0101  5

  0110  6

  0111  7

  1000  8

  1001  9

  1010  A

  1011  B

  1100  C

  1101  D

  1110  E

  1111  F

 

 例えば、1101という2進数は、Dという16進数に変換されます。

 

3.変換した16進数を結合する。

 それぞれの4桁の2進数を16進数に変換し、順番に結合していくと、1101 1010 1011 0010 は、DA B2という16進数に変換されます。

したがって、2進数の111011010101100101を16進数に基数変換すると、ED65となります。

 

 注意点としては、2進数を4桁ずつ区切る際に、最初の4桁が足りない場合は、0を足してから変換する必要があります。また、結合した16進数の先頭に0がつく場合は省略して表記することができます。

 以上が、2進数から16進数への基数変換の方法となります。

|2進数を8進数や16進数に基数変換するときに注意点

 2進数から8進数や16進数に基数変換する際には、特に注意すべきことがあります。

 まず、2進数を3桁または4桁ずつにグループ化し、それぞれを8進数や16進数に変換する必要があります。この際、グループ化する桁数が間違っていると、誤った値に変換されてしまう可能性があります。また、変換途中の計算を間違えてしまうと、最終結果が正しくないこともあります。そのため、計算をする前にしっかりとグループ化し、変換の手順を順序良く確認しながら進めることが大切です。また、変換後の結果が正しいかどうかを確認するために、10進数に基数変換して元の値と比較することも有効な方法です。

 以上のように、基数変換を行う際には細心の注意が必要です。

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com

amprime.hatenablog.com