過去問解きまくり研究所 ホーム

令和3年度 秋期 午前 問23

ハードウェア

汎用入出力ポートに書き込む値

マイコンの汎用入出力ポートに接続された LED1 を,LED2 の状態を変化させずに点灯したい。汎用入出力ポートに書き込む値として,適切なものはどれか。ここで,使用されている汎用入出力ポートのビットは全て出力モードに設定されていて,出力値の読出しが可能で,この操作の間に汎用入出力ポートに対する他の操作は行われないものとする。

〔図〕

汎用入出力ポート(上から (MSB) ビット7・ビット6・…・ビット3・…・(LSB) ビット0)
  ビット3 ── 電流制限抵抗 ── LED 1 ── 接地
  ビット6 ── 電流制限抵抗 ── LED 2 ── 接地
答えと解説を見る

✓ これが正解イ汎用入出力ポートから読み出した値と 16 進数の 08 との論理和

解説

他のビットを残したまま1にするなら論理和です。

設問は、二つの発光部が別々のビットにつながっている汎用入出力ポートに対し、片方だけを点灯させ、もう片方の状態は変えないための書込み値を、四通りの中から選ばせています。ですから見分けの軸は、点灯させたいビットだけが1になっている値を用意し、読み出した現在の値とそれとの論理和を取っているか、という一点だけです。あるビットを1にしたいときに論理和を使うと、残りのビットは元の値のまま持ち越されます。これに対して論理積を使うと、相手の値が0になっている位置はすべて0へ落ちてしまいます。図が示すつなぎ先から、点灯させたい側のビットだけが立つ値は16進数の08だと読み取れます。

ほかの選択肢はなぜ違うのか

出典:令和3年度 秋期 応用情報技術者試験 午前 問23

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)