スイッチが押されたことを検出する論理式
出典: 令和7年度 秋期 応用情報技術者試験 午前 問21 (IPA)
組込みシステムのプログラムで,放された状態では 0 になり,押された状態では 1 になるスイッチの値を読み込んでいる。このプログラムによって,スイッチの値は周期的に適切なタイミングで読み込まれ,チャタリング処理などの適切な処理が行われるものとし,a が今回の値で,b が前回の値とする。このスイッチが放された状態から押された状態に変化したことを検出するための論理式はどれか。ここで,“・”は論理積,“+”は論理和,“ ̅ ”は論理否定を表す。
- ア a・b̅
- イ a̅・b
- ウ a+b̅
- エ a̅+b
正解と解説を見る
正解: ア
- ア: 今回 a = 1 かつ前回 b = 0 のときだけ 1 になるので、放された状態から押された状態への変化を検出できます。
- イ: a̅・b は今回 0・前回 1、つまり押された状態から放された状態への変化を検出する式です。
- ウ: 論理和なので、押し続けている間 (a = 1, b = 1) や放したまま (a = 0, b = 0) でも 1 になってしまいます。
- エ: 論理和なので、変化していないときにも 1 になります。押された瞬間だけを検出できません。
ポイント
- 「放された状態から押された状態に変化した」は、前回 b = 0 (放された) で、今回 a = 1 (押された) という意味です。
- 両方がそろったときだけ 1 にしたいので、論理積で a・b̅ と書きます。