2進数


10進数と2進数

普段使う10進数は10個の数字(文字:0、1、2、3、4、5、6、7、8、9)と位取りによって数値を表わす方法です。2進数(Two binary numbers)は使う文字が2個で同様の位取りを行う数値表現法です。多くの場合、数字には文字0、1が使われます。

10進数は1桁目が1の位、2桁目が10の位、3桁目が100の位の様にn桁目が10のn-1乗の位になります。これに対して2進数は1桁目が1の位、2桁目が2の位、3桁目が4の位とn桁目が2のn-1乗の位になります。

10進数との対応を表にしてみました。2進数はどうしても桁数が多くなり人間が読み書きするのには適していませんが、計算機の電子回路で計算するには簡単で適した表現方法です。

2進数

10進数

0

0

1

1

10

2

11

3

100

4

101

5

110

6

111

7

1000

8

1001

9

1010

10

1011

11

1100

12

1101

13

1110

14

1111

15

10000

16

10001

17

10010

18

10011

19

10100

20

.....

.....

1100100

100

10000000000

1024

.....

.....

16進表記

10進数や2進数と同様にn進数を新につくることを考えて見ましょう。3進数なら数字は0、1、2の三文字を使って作れます。4進数だと0、1、2、3の4文字必要です。2進数と4進数を比べると00,01,10,11が0,1,2,3の様に2進数の2桁分が4進数1桁に対応することがわかります。

2進数

4進数

8進数

10進数

16進数

0

0

0

0

0

1

1

1

1

1

10

2

2

2

2

11

3

3

3

3

100

10

4

4

4

101

11

5

5

5

110

12

6

6

6

111

13

7

7

7

1000

20

10

8

8

1001

21

11

9

9

1010

22

12

10

A

1011

23

13

11

B

1100

30

14

12

C

1101

31

15

13

D

1110

32

16

14

E

1111

33

17

15

F

....

....

....

....

....

10000000000

100000

2000

1024

400

....

....

....

....

....

 2進数との対応が簡単なn進数で10進数に近いものには8進数と16進数(Hexadecimal number)があり何れも2進数の3桁分、4桁分と一桁が対応します。8進数も使われますが、16進数は特によく使われ、数字には文字0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,Fの16文字を使います。

 2進数4桁が16進数1桁にきれいに対応するので計算機の世界では2進数を人間が読みやすい様に16進数として表わすことが多い。メモリーの単位として使われるバイトは2進数8桁分なので、16進数なら2桁で1バイトのデータを表現できる。