0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

進数計算(2進数、10進数、16進数)

Last updated at Posted at 2022-12-02

1,はじめに

 現在2か月の職業訓練を受けていて、その中で進数計算について学んだので、記事を書く練習も兼ねてまとめてみたいと思います。
 教員時代、算数のちょっとした発展課題で4進数の計算問題をだしたことがあったのですが、自分も勉強不足で子供と一緒に悪戦苦闘したのは良い思い出です。w

2,2進数とは

 そもそもPCは電気で動いているので、電気が通っている通っていないの2つで信号を区別しているので、0と1の二つが使われています。

 0と1のみで考えるので、0→1→10というように位が変わります。

ちなみに、人間は指が10本だから10進数という説もあるそうな。
指で計算している小学生をたくさん見てきたから確かにー!:flushed:

3,16進数とは

 16進数はbyte単位での計算と相性が良い進数で、
0→1→2→・・・・9→A→B→C→D→E→F→ 10
と16個の数字で位が変わります。

4,進数変換

2進数 ⇒ 10進数

 2進数の「1011」を10進数に変換します。

1011(2進数) 
= $2^3 * 1 +2^2 * 0 + 2^1 * 1 + 2^0 * 1 $
= $8 * 1 + 4 * 0 + 2 * 1 + 1 * 1 $
= $8+2+1 $
= $11$(10進数)
各桁に2の重みをかけて足すだけですね。

10進数 ⇒ 2進数

9(10進数)
ひたすた2で割り続けます。
$11 / 2 = 5...1$
$ 5 / 2 = 2...1$
$ 2 / 2 = 1...0$
$ 1/2=0...1$
余りは下から読んでいきます。
1011(2進数)

※16進数も同じ方法ですので簡単に、、、(省略してすみません。)
アルファベット部分は自分で数えるしかないですね。

16進数→10進数

各桁に16の重みをかけて、足す。

10進数→16進数

ひたすら16で割って、その余りを下から読んでいく。

2進数 ⇒ 16進数

基本的には2進数→10進数→16進数で考えていきます。
1011→11→B

では桁が大きいもので考えてみましょう。
11101011(2進数)

まず、4つずつに分けます。
1110 1011

あとはそれぞれ→10進数→16進数と変換します。
14  11
E   B
→EB(16進数)

補足

  • 16進数は10進数と区別するために先頭に「0x」をつけることもあります。
     例)0xEB
  • 2進数は場合によっては8桁のまとまりで書くこともあります。(サーバー系の方が仰っていました。)
     例)1011→0001011
  • 指で2進数を数える方法が、意外と便利ですね。片手で31まで数えられます。
     グーの状態で親指から順番に、指を立てている→1、指をおろしている→0、で順番に数えます。
     言葉で説明が難しいのです。Youtubeで調べるとたくさん出てきますので、あとは自分で…(悪しからず:sweat:
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?