令和3年度 秋期 応用情報技術者試験 午前 問23
マイコンの汎用入出力ポートに接続されたLED1を, LED2の状態を変化させずに点灯したい。汎用入出力ポートに書き込む値として,適切なものはどれか。ここで,使用されている汎用入出力ポートのビットは全て出力モードに設定されていて,出力値の読出しが可能で,この操作の間に汎用入出力ポートに対する他の操作は行われないものとする。

- ア 汎用入出力ポートから読み出した値と16進数の08との論理積
- イ 汎用入出力ポートから読み出した値と16進数の08との論理和
- ウ 汎用入出力ポートから読み出した値と16進数の48との論理積
- エ 汎用入出力ポートから読み出した値と16進数の48との論理和
キーボード:1〜4 で解答 → 次の問題 ← 前の問題
正解と解説を見る
解答する前に解説を開いたので、この問題は「見て解いた」として記録します(正解数には入りません)。
正解:イ
ポイント
- LED1はビット3(0x08)に接続されています。
- LED2はビット6(0x40)に接続されています。
- 汎用入出力ポートの値を変更してLED1だけを点灯させる必要があります。
- ビット演算でLED1のビットを1にし、他のビットは変更しないようにします。
選択肢の考察
- 論理積 (AND): 指定したビット以外をクリア(0)にする操作。
- 論理和 (OR): 指定したビットをセット(1)する操作。
LED1を点灯させるには、ビット3を1にする操作が必要です。
したがって、現在の状態を読み出し、0x08(ビット3)との論理和 (OR) を行う必要があります。
選択肢の確認
- ア: AND操作で0x08を適用 → 不要なビットがクリアされ、LED2が消える可能性がある。
- イ: OR操作で0x08を適用 → ビット3が1になり、LED1が点灯。LED2の状態は変わらない。
- ウ: AND操作で0x48を適用 → 不要なビットがクリアされる可能性があり、不適切。
- エ: OR操作で0x48を適用 → LED2も点灯する可能性があるため不適切。
答え
イ 汎用入出力ポートから読み出した値と16進数の08との論理和
出典:令和3年度 秋期 応用情報技術者試験 午前 問23