応用情報技術者試験 令和7年度 秋期 午前 問21
組込みシステムのプログラムで、放された状態では 0 になり、押された状態では 1 になるスイッチの値を読み込んでいる。このプログラムによって、スイッチの値は周期的に適切なタイミングで読み込まれ、チャタリング処理などの適切な処理が行われるものとし、a が今回の値で、b が前回の値とする。このスイッチが放された状態から押された状態に変化したことを検出するための論理式はどれか。ここで、"・"は論理積、"+"は論理和、" ̄"は論理否定を表す。
選択肢を押すと答え合わせができます。
正解と解説を見る
【正解】ア
放された状態から押された状態への変化では、前回値bは0、今回値aは1です。今回値が1という条件はa、前回値が0という条件はb̅で表されます。両方が同時に成立したときだけ検出したいので、論理積を取り、a・b̅となります。値の組合せを(a、b)で表すと、(1、0)のときだけ式が1になるため、押下の瞬間、すなわち立上りエッジを検出できます。押し続けて(1、1)になった場合は0となるので、押下中に何度も検出することもありません。
イのa̅・bは誤りです。これは今回値が0、前回値が1のときに1となり、スイッチが押された状態から放された状態へ変わる立下りエッジを検出する式です。 ウのa+b̅は誤りです。論理和なので(a、b)が(0、1)のとき以外は1となり、押下前の(0、0)や押し続けた(1、1)でも成立します。変化した瞬間だけを判定できません。 エのa̅+bは誤りです。これは(1、0)のときだけ0となる式であり、求める押下の瞬間を検出するどころか、その組合せだけを除外します。
【ポイント】 現在値と前回値を組み合わせると、信号のエッジを検出できます。 立上りは「現在1かつ前回0」、立下りは「現在0かつ前回1」です。 否定が現在値と前回値のどちらに付くかを取り違えないことが重要です。
出典:令和7年度 秋期 応用情報技術者試験 午前 問21
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。
この回の80問を、アプリで通しで解く
- 本番と同じ問題数・制限時間で通し演習(模試モード)
- 間違えた問題は自動で「復習すべき問題」に回る
- 解説で分からない点はAIに質問できる