問1
10進数の演算式 7÷32 の結果を2進数で表したものはどれか。
ア 0.001011
イ 0.001101
ウ 0.00111
エ 0.0111
正解
ウ
解説
10進数の7を2進数で表すと 0111である。また10進数の32は25である。
2進数で表された数を2で割ると1ビット右にシフトするから、0111を5回、すなわち5ビット右にシフトさせると 0.00111 となる。
【別解】
7÷32 = 0.21875である。
10進数の数字に2を掛けて、1の位が1になれば1を引く。この計算を小数点以下が0となるまで続け、小数点以下が0になれば、1の位の数字を左から順に並べる、という方法がある。
0.21875 × 2 = 0.43750
0.4375 × 2 = 0.875
0.875 × 2 = 1.75 ・・・1を引く
0.75 × 2 = 1.5 ・・・1を引く
0.5 × 2 = 1.0 小数点以下が0となったので終了
上から順に1の位を並べると
0.00111
タグ:2進数