nビットの値 L1、L2がある。次の操作によって得られる値L3は、L1とL2に対する
どの論理演算の結果と同じか。
〔操作〕
(1) L1とL2のビットごとの論理和をとって,変数Xに記憶する。
(2) L1とL2のビットごとの論理積をとって更に否定をとり,変数Yに記憶する。
(3) XとYのビットごとの論理積をとって、結果をL3とする。
ア 排他的論理和 イ 排他的論理和の否定
ウ 論理積の否定 エ 論理和の否定
(1) より X = L1 ∪ L2
(2) より Y = L1 ∩ L2
(3) より L3 = X ∩Y
L3 = X ∩Y
= (L1 ∪ L2) ∩ ( L1 ∩ L2 )
= (L1 ∪ L2) ∩ ( L1 ∪ L2 )
= ((L1 ∪ L2) ∩ L1 ) ∪ ((L1 ∪ L2) ∩ L2 )
= ((L1 ∩ L1 ) ∪ (L2 ∩ L1 )) ∪ ((L1 ∩ L2 ) ∪ (L2 ∩ L2 ))
= (φ ∪ (L2 ∩ L1 )) ∪ ((L1 ∩ L2 ) ∪ φ)
= (L2 ∩ L1 ) ∪ (L1 ∩ L2 )
従って、排他的論理和となる。
【別解】
下図で、
(1)は Y1、Y2、X の部分
(2)は Y1、Y2、Y3の部分
(3)は(1)と(2)の共通部分だから Y1とY2の部分で
これは排他的論理和。
イの排他的論理和の否定は X、Y3の部分
ウの論理積の否定はY1、Y2、Y3の部分
エの論理和の否定はY3の部分