基数の変換方法

変換 (あ) 60進法を用いる時分秒の計算に 60 で割ったあまりを利用したように 10 進数から 2 進数に変換するには 2 で割ったあまりを順に求める。 12 ÷ 2 = 6 あまり 0 6 ÷ 2 = 3 あまり 0 3 ÷ 2 = 1 あまり 1 1 ÷ 2 = 0 あまり 1 (これから先はずっと 0) 10進数の 12 は 2進数の 1100 変換 (い) 2進数表記の定義にもとづき、2 進数から 10 進数に変換する には2の冪乗を順に求めて「1」の桁だけ足し算する。 (その桁の数をかけて加えるのだが、桁の数は 0か1だけであり、 0をかけると0、1をかけると冪乗そのものになる。)
これらの変換法は、人間が 10 進数表記による計算に慣れているため 計算を10進数で行なうことを考慮した方法になっている。計算機で行 なう時すなわちプログラムで行なう時は、必ずしもこの方法ではない。 変換 (あ)は、割算で商とあまりを求める演算ができれば実行できる。 この演算ができる「得意な基数表記」から「任意基数」への変換法と 考えられる。 「得意な基数表記」とは変換する実体にとって計算が容易に行 なえる表記であり、機械の場合「内部表現」といってもよいで あろう。人間の場合は(たぶん)10 進数であり、コンピュータ の場合は2 進数である。 変換 (い)は、かけ算と足し算の繰り返しで構成されており、 「任意基数」から、これらの演算が可能な「得意な基数表記」 への変換法と考えられる。
2進数の演算:桁数が多いが10進数より簡単 2進数の足し算 0+0=0 1+0=0+1=1 1+1=10 2進数の掛け算 0*0=0*1=1*0=0 1*1=1 2進数の割算(商の各桁は1か0しかない) 例:361÷12 → 101101001 ÷ 1100 11110...1 ---------- 1100 )101101001 1100 ----- 10101 1100 ----- 10010 1100 ----- 1100 1100 ------- 1
第7回のノートのレポート課題7に戻る
戻る