2015/04/18

二進法と十進法の変換方法と計算例

分野: 整数問題  レベル: 入試対策

二進法と十進法について。二進数と十進数を互いに変換する方法と計算例,小数を含む場合についても解説します。

二進法,十進法とは

十進法:$0,1,2,3,4,5,6,7,8,9,10,\cdots$ と数えていくお馴染みの方式。
$a_n10^n+a_{n-1}10^{n-1}+\cdots +a_110^1+a_010^0$
という数字を $a_na_{n-1}\cdots a_1a_0$ と表す。

二進法:$0,1,10,11,100,101,110,111,1000,\cdots$ と数えていく方式。
$a_n2^n+a_{n-1}2^{n-1}+\cdots +a_12^1+a_02^0$
という数字を $a_na_{n-1}\cdots a_1a_0$ と表す。

※ $10^0=2^0=1$ に注意
※小数を考える場合には $a_{-1}2^{-1}+a_{-2}2^{-2}+\cdots $という項が続く。

二進法から十進法への変換

二進法から十進法への変換は非常に簡単です。 $1$ が立っているところに2のベキ乗をかけて足し合わせるだけです。

例題1

二進法で $110101$ と表される数字を十進法で表示せよ。

解答

二進法の定義より,
$110101=1\cdot 2^5+1\cdot 2^4+0\cdot 2^3+1\cdot 2^2+0\cdot 2^1+1\cdot 2^0$
これをいつもの十進法の世界で計算すると,$32+16+4+1=53$


小数が入っても同じです。

例題2

二進法で $101.011$ と表される数字を十進法で表示せよ。

解答

二進法の定義より,
$101.011=2^2+2^0+2^{-2}+2^{-3}$
これを十進法の世界で計算すると,$4+1+\dfrac{1}{4}+\dfrac{1}{8}=\dfrac{43}{8}$

十進法から二進法への変換

十進法から二進法は与えられた数をひたすら2で割っていき,余りを下から書いていくことで変換できます。(理由は後述)

例題3

十進法で $53$ と表される数字を二進法で表示せよ。

二進法への変換

解答

$53$ から出発して $2$ で割った商を下に,余りを右下に書く。出てきた商に対して同じ操作を繰り返す。商が0になるまでやる。二列目の数字を下から読むと求める二進法となる。

よって,$53$ は二進法では $110101$

上記の方法でうまくいく理由

例題3で解説した方法でなぜ二進数表示が得られるのか解説します。

解説

例題3の変換操作で6つの式が得られた。一番上の式は,
$53=26\times 2+1$

この $26$ に上から二つめの式を代入すると,
$53=(13\times 2+0)\times 2+1\\
=13\times 2^2+1$

この式の $13$ に上から三つ目の式を代入すると,
$53=(6\times 2+1)\times 2^2+1\\
=6\times 2^3+2^2+2^0$

以下同様な操作を繰り返すことで,結局
$53=2^5+2^4+2^2+2^0$ という二進数表示を得る。

そして,求めたい係数($0$ or $1$)は各操作の余りを(下から)並べたものである。

小数を含む場合

二進法における有限小数は簡単に十進数に変換できました(例題2)。一方,十進法における有限小数は二進数表示したときに有限小数になるとは限りません。
(例えば十進法の $0.1$ を二進法で書くと $0.000110011001100\cdots $)

ただし,十進法で $\dfrac{n}{2^N}$ と表される数の場合は桁をずらすことで有限小数の二進数で表示できます。

例題4

$m=\dfrac{43}{8}$ を二進数表示せよ。

解答

$2^3m=43$ は整数なので先ほどの方法で二進数表示できる。

小数を含む場合

図より $43$ は二進法で $101011$ なので
$2^3m=2^5+2^3+2^1+2^0$
よって,$m=2^2+2^0+2^{-2}+2^{-3}$
となり,$m$ の二進数表示は $101.011$

コメント:
十進数の世界で $10^N$ で割る→小数点を左に $N$ 桁ずらす
二進数の世界で $2^N$ で割る→小数点を左に $N$ 桁ずらす

小数と書きたいのに少数と書いてしまうミスに注意。

Tag: 数学Aの教科書に載っている公式の解説一覧

分野: 整数問題  レベル: 入試対策