進数について
二進数とは、
コンピュータに処理を行わせるためにつかう1と0で構成された数
(コンピュータはオンとオフしか処理できないため0をオフ1をオンと見立てて演算を行う)
~変換方法について~
:二進数を十進数へ:
例
1010(2)を十進数に変換
補足:()の中にある数字で何進数か判断します。{(2)だったら二進数}」
桁の重みをかける
1*2^3+0*2^2+1*2^1+0*2^0=10(10)
:10進数を二進数へ:
例
4(10)を二進数へ
4を2で割った余りと商を使う
4/2=2...0
2/2=1...0
もう割れないところまで割ったら商と余りを並べる
並べ方は最後に計算した商→最後に計算した余り→途中に計算した余り→最初に計算した余り
よって100(2)
~16進数~
10=A、11=B・・・15=F
例
7A(16)を十進数へ変換
桁の重みをかける
7*16^1+10*16^0=122(10)
~小数点の基数変換~
:十進数から二進数へ:
例
0.75(10)を二進数へ
:桁の重みを利用した方法:
0 0 0 0. 0 0 0 0 (2)
2^3,2^2,2^1,2^0,2^-1,2^-2,2^-3,2^-4 (二進数の桁の重み)
2^-1=0.5 2^-2=0.25
0.11(2)
:2をかけていく方法:
2をかけていって一の位を利用して二進数に変換、なお0になるまでかけていく
0.75*2=1.5 ←ここで一の位を取り出す 1
0.5 ←一の位が取り出され0.5に
0.5*2=1.0 ←一の位を取り出す 11
0.75(10)は小数点以下なので同様に
0.11(2)となる
2.5(10)を二進数に変換する場合は
2は十進数から二進数への計算方法を利用
0.5は2をかけていく方法が好ましい
二進数の小数点を十進数へ
例
0011.11(2)を十進数へ
桁の重みをかける
1*2^1+1*2^0+1*2^-1+1*2^-2=3.75(2)
:16進数の小数点を十進数へ:
7.A(16)を十進数へ
7(16)=0111(2)
A(10)=1010(2)
それぞれ桁の重みを足すと
0111.1010(2)=7.625(10)
まとめ
進数変換には重みで変換する方法と割ったりかけたりする方法がある