1バイトは何ビット?16進数から10進数・2進数に変換?




1バイトは何ビット?16進数から10進数・2進数に変換?

私たちが生活している世界では10進数が利用される事が多く、2進数にあまり馴染みがありません。

しかし、今や生活に欠かす事の出来ないコンピュータは2進数を利用しています。

  • 人間の世界・・・10進数
  • コンピュータの世界・・・2進数

10進数・2進数についての記事はこちら

2進数・10進数とは?2進数から10進数に変換【図解】
2進数・10進数とは?2進数から10進数に変換【図解】 普段の私たちの生活では10進数を利用する事が多いため、2進数に馴染みがないかもしれません。 しかし、2進数を知る事で、現代には欠かす事の出来ないコンピュータが動く仕組みが理解が...

なぜ、それぞれの世界で別々の進数を使うのかと言うと、その進法(進数)がその世界で便利だからです。

  • 人間の世界・・・人間は指の数が10本なので、指を使って数字を数えやすい
  • コンピュータの世界・・・IC(Integrated Circuit:集積回路)に
    • 電気が流れている
    • 電気が流れていない

    の2つの方法で、情報(データやプログラム)を処理出来る

この記事では、

  • コンピュータの世界で使われるビット【bit】・バイト【byte】
  • 16進数

それぞれについて説明していきます。

ビット【bit】・バイト【byte】

ビット【bit】・バイト【byte】

コンピュータはIC(集積回路)と呼ばれる電子部品から構成されており、黒いボディーに付いた1本1本のピンに電気を流すことで、情報(データやプログラム)を処理しています。

集積回路

ビット【bit】

このIC(集積回路)のピン1本で表せる情報が,コンピュータの情報の最小単位となります。

これを、ビット【bit】と呼びます。

ビット【bit】は【Binary digit】を簡略化したもので、1ビットは2進数の1桁ですので

  • 0(ピンに電気を流さない)
  • 1(ピンに電気を流す)

の2通りの情報しか表せません。

バイト【byte】

バイト【byte】は、8ビットすなわち2進数の8桁を情報の基本単位とすることになっています。

1 バイト = 8 ビットです。

バイト【byte】:【Bite】( ひと噛みの意味 ) の言葉をもじり、【byte】 と名付けた人造語

ビット【bit】・バイト【byte】

1バイト(8 ビット)は、

  • 2進数で、00000000 ~ 11111111
  • 10進数で、0 ~ 255の256通り

の情報を表せます。

1バイト

1バイト

16進数

16進数

10進数の123,456,789を2進数で表すと、111010111011100110100010101です。

2進数は桁が大きくなればなるほど、

  • 人間にとって読みにくい
  • 人間がプログラムや仕様書を16進数で表現すれば、長い2進数を書く必要がない

そこで、プログラムや仕様書を扱いやすくするために16進数が使われるのです。

コンピュータは2進数しか扱えませんが、

  • 16進数
  • 2進数

の相性が良い為、人間がプログラムや仕様書に16進数で表現しても、コンピュータは複雑な変換処理が必要なく2進数に変換出来ます。

では、どのようにして1桁を16進数で表すのでしょうか。

16進数では、0 ~ 15までを1桁で表せるよう、10 ~ 15には、それぞれA ~ Fを当てはめるのです。

10進数2進数16進数
000000
100011
200102
300113
401004
501015
601106
701117
810008
910019
101010A
111011B
121100C
131101D
141110E
151111F

2進数から16進数への変換は容易です。

2進数を4桁ずつに区切るだけです。

10進数2進数16進数 
1610000101. 2進数「10000」を
・1
・0000 に分解。
2. 分解した2進数を16進数に変換
・1(2進数) → 1(16進数)
・0000(2進数) → 0(16進数)
3. 16進数同士を合わせて「10」
25511111111FF1. 2進数「11111111」を
・1111
・1111 に分解。
2. 分解した2進数を16進数に変換
・1111(2進数) → F(16進数)
・1111(2進数) → F(16進数)
3. 16進数同士を合わせて「FF」

このように、4桁ずつ区切って変換するだけで、2進数と16進数の変換が簡単に出来ます。

何故、簡単に出来るのか。

それは、16が「2の4乗」だからです。

16進数は

  • 人間
  • コンピュータ

両方にとって扱いやすい進法(進数)なのです。

以上、

  • コンピュータの世界で使われるビット【bit】・バイト【byte】
  • 16進数

それぞれについての説明になります。