2進数
のような記法がされる時、カッコ内は10進数で表記した際の数字です。
2進数はその桁の値が2になると桁が上がる表記法です。すなわち、2進数での数は0と1のみで表記されます。以下に10進数(私たちが通常用いる数字の表記法)を2進数で表す例を示します。
10進数 | 2進数 |
---|---|
0 | 0 |
1 | 1 |
2 | 10 |
3 | 11 |
4 | 100 |
10 | 1010 |
100 | 1100100 |
0.5 | 0.1 |
0.25 | 0.01 |
0.75 | 0.11 |
列記してみてわかるように、2進数の各桁は2の冪数()になっていることがわかります。例えば一桁目は, 二桁目は, 小数点以下に関しても一桁目が, 二桁目がとなっています。
四則演算
編集和算・減算
編集2進数の足し算と引き算に関しては10進数のそれと同じような要領でできます。
1 | 0 | 1 | |||||
- | 0 | 1 | 1 | ||||
0 | 1 | 0 |
0 | 1 | 0 | |||||
+ | 0 | 1 | 1 | ||||
1 | 0 | 1 |
左の計算では、一桁目は , 二桁目は , 三桁目は二桁目から繰り上がった が入っています。右の計算では、一桁目は , 二桁目は三桁目から繰り下がりして , 三桁目は二桁目で繰り下がったため が入っています。
積算・除算
編集2進数のかけ算とわり算に関して、10進数のそれとはあまり応用が効きません。理由として通常計算をする際には、各自暗記した九九を転用して行うこととなりますが、2進数のそれは別のものとなるためです。[1]そのため、基数変換によって2進数を10進数に変換するか、後述のシフト演算という手法を用いることになります。
シフト演算
編集2進数の各桁は10進数で見たときに2の冪数となっていることは前述したとおりです。つまり、現在の数字に2をかけると左に一つ桁がズレ、2で割ると右に一つ桁がズレます。
上の例ではカッコ内に10進数で表記した際の数字を記述していますが、確かに数字そのままに桁を一つズラすと各2でかけ算わり算をしたときの結果になっていることがわかると思います。
シフト演算では、この桁のズレを利用して計算を行います。上記の桁のズラしを1回行うと、2でのかけ算(わり算)が行われます。つまり、左(右)に桁をn回ズラすと、現在の数字に でかけ算(わり算)を行うという処理になることがわかると思います。以下に例を示します。カッコ内は10進数で表記した際の数字です。
しかし、このやり方のみでは での積除算しかできません。そのため、 以外でかけ算わり算をするときには足し算引き算も使用します。以下に例を示します。