コンピュータ構成要素

基本情報技術者試験 科目A免除 修了試験 20260614 実施分 問9

1MHzのクロックでカウントアップする16ビットタイマーを用いて,パルスの幅を測定する。パルスの立上がり時のタイマー値が100,立下がり時のタイマー値が5,000で,立上がりから立下がりまでの間に1度だけタイマーがオーバーフローした。このとき,立上がりから立下がりまでのパルス幅は何ミリ秒か。
  • ア 4.900
  • イ 60.636
  • ウ 70.436
  • エ 135.972

出典:基本情報技術者試験 科目A免除 修了試験 20260614 実施分 問9

答えと解説を見る

正解:ウ

覚える知識

タイマー値とオーバフローからのパルス幅計算

カウント差はオーバフロー回数×2^ビット数+(終了値−開始値)で求め、クロック周期を掛けて時間にする。

この問題で必要なこと

16ビットタイマーは65,536で一周する。オーバフロー1回なら経過カウントは65,536+5,000−100=70,436で、1MHzなので70.436ms。

ひっかけ

オーバフロー分を加算し忘れる、または周期の単位(μs/ms)を取り違える。

この知識の出題:本試験系 0 回・免除試験 1 回(公開問題での観測値)

この知識をアプリで解いて覚える レッスン「論理回路(加算器・NAND・フリップフロップ)」で学ぶ