基数変換と補数 想定問題 1
2進数を10進数に直す次の手順で,(11100101)2を変換する。手順の途中で変数sがとる値のうち,空欄【ア】〜【エ】にあてはまる数の組合せとして,最も適切なものはどれか。
【手順】いちばん左の桁の値をsに入れる。そのあと右へ1桁進むごとに,sを2倍してその桁の値(0か1)を加えたものを新しいsとする。いちばん右の桁まで進んだときのsが10進数の値である。
(例)(110)2なら,sは1,3,6の順に変わり,6が答えになる。
左から読む桁:1,1,1,0,0,1,0,1
sの値:1,3,7,【ア】,【イ】,【ウ】,【エ】,229
アイウエ
解説
ポイント
2進数を上の桁から読み,「2倍して次の桁を足す」手順で,途中の値を追う問題です。
考え方と解き方
1桁左にずらすと値は2倍になります。次の桁が0なら2倍するだけ,1なら2倍して1を足します。桁は上から 1,1,1,0,0,1,0,1 です。
ア:4桁目は 0 なので 7×2+0=14 です。15 は0の桁で1を足してしまった値です。
イ:5桁目は 0 なので 14×2+0=28 です。29 は0の桁で1を足してしまった値です。
ウ:6桁目は 1 なので 28×2+1=57 です。56 は1を足し忘れた値です。
エ:7桁目は 0 なので 57×2+0=114 です。115 は0の桁で1を足してしまった値です。最後に 114×2+1=229 となり,問題文の最後の値と合います。答えは ア 14,イ 28,ウ 57,エ 114
覚えておくこと
- 2進数→10進数の流れ図は,最初に s=いちばん上の桁,あとは s←s×2+次の桁 をくり返す(テキスト・解き方)
- 答えが出たら,桁の重みを足して10進数に戻し,元の数と合うか確かめる(テキスト・解き方)
- 流れ図で「0の桁」は2倍だけにする。0の桁で+1 をしない(テキスト・ひっかけ)
類似する過去問:令和4年度 基礎科目 I-2-5、令和2年度 基礎科目 I-2-5
テキスト「基数変換と補数」を読む