平成24年度 秋期 午前 問21
ハードウェア
基数に関する問題
8 ビット D/A 変換器を使って,電圧を発生させる。使用する D/A 変換器は,最下位の 1 ビットの変化で 10 ミリ V 変化する。データに 0 を与えたときの出力は 0 ミリ V である。データに 16 進数で 82 を与えたときの出力は何ミリ V か。
- ア820
- イ1,024
- ウ1,300
- エ1,312
答えと解説を見る
✓ これが正解ウ1,300
解説
16 進の 82 を 10 進に直してから 10 倍します。
設問は、8 ビットの値を電圧に変える装置に 16 進数の入力を与えたときの出力を問うています。決め手は一つで、入力を 10 進の値として読み、そこに 1 ビットあたりの電圧を掛けることです。最下位の 1 ビットが動くと出力が 10 ミリボルト変わり、入力が 0 のときの出力は 0 ミリボルトだと設問が定めていますから、出力は入力の値と 10 の積になり、足したり引いたりする下駄はありません。そこで入力の基数をそろえます。16 進の 82 は、上の桁が 16 の重み、下の桁が 1 の重みですから、8 を 16 倍した 128 に 2 を足して 130 です。8 ビットで表せる上限は 255 ですから、130 は入力として成り立ちます。あとは 130 に 10 を掛けて 1,300 ミリボルトとなります。D/A 変換の問題では、単位をそろえる前に、その数字がどの基数で書かれているかを確かめる習慣が効きます。
ほかの選択肢はなぜ違うのか
- ア820:820 という値は、入力を 10 進の 82 のまま読んで 10 倍した結果です。桁の重みを 16 と 1 に置き直す手順が抜けており、設問が 16 進数と断っている以上、この読み方は採れません。
- イ1,024:1,024 は 2 を 10 回掛けた数で、ビットという語から連想しやすい数字です。ただし与えられた入力の値とも 1 ビットあたりの電圧とも結び付かず、この問題の計算には一度も現れません。
- エ1,312:1,312 は、入力を 10 進の 82 と読んだうえで、掛ける相手を電圧ではなく 16 と取り違えたときに出ます。本文には 10 と 16 の二つの数が出てくるので、役割を分けて書き留めておくと防げます。
出典:平成24年度 秋期 応用情報技術者試験 午前 問21
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)