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

平成28年度 春期 午前 問1

基礎理論

論理和に関する問題

n ビットの値 L1,L2 がある。次の操作によって得られる値 L3 は,L1 と L2 に対するどの論理演算の結果と同じか。

〔操作〕
(1) L1 と L2 のビットごとの論理和をとって,変数 X に記憶する。
(2) L1 と L2 のビットごとの論理積をとって更に否定をとり,変数 Y に記憶する。
(3) X と Y のビットごとの論理積をとって,結果を L3 とする。

答えと解説を見る

✓ これが正解ア排他的論理和

解説

論理和から両方が1の場合を外した形なので排他的論理和です。

操作を式に直すところから始めます。まず、L1 と L2 のビットごとの論理和を取った X は、どちらか一方でも 1 であれば 1 になる値です。次に、L1 と L2 の論理積を取ってから否定を掛けた Y は、両方が 1 のときだけ 0 になる値、つまり両方そろってはいないことを表す値です。最後にこの二つの論理積を取るので、L3 が 1 になるのは、どちらかは 1 であり、かつ両方そろってはいないときだけ、すなわちちょうど一方だけが 1 のときになります。これは排他的論理和の定義そのものです。1 ビットぶんで確かめます。どちらも 0 なら X が 0 なので L3 は 0、片方だけが 1 なら X も Y も 1 なので L3 は 1、どちらも 1 なら X は 1 でも Y が 0 になるので L3 は 0 です。四通りとも排他的論理和と同じ値になりました。操作はビットごとに行うので、n ビットあっても各桁で同じことが起きます。論理和から両方そろった場合だけを削り落とす形だと読めると、覚え直さずに導けます。

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

出典:平成28年度 春期 応用情報技術者試験 午前 問1

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