基本情報技術者試験 2001年度 = 平成13年度・秋期 午前 問10

 4ビットの2進数で表現された数が二つある。これらのビットごとの論理積は0010であり、ビットごとの論理和は1011となる。二つの数の和はどれか。

 ア 1100  イ 1101  ウ 1110  エ 1111

解答

 イ

解説

 二つの数のビットごとの論理積が0010で、ビットごとの論理和が1011であることから、以下に示すように、もとの数の中央2ビットが確定します。

        両方とも1        両方とも0           ↓            ↓      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐      │ │ ││ │      │ ││ │ │      └─┴─┴─┴─┘      └─┴─┴─┴─┘      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐  AND │ │ ││ │   OR │ ││ │ │      └─┴─┴─┴─┘      └─┴─┴─┴─┘  ─────────────   ────────────      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐      │0│0││0│      │1││1│1│      └─┴─┴─┴─┘      └─┴─┴─┴─┘

 また、最下位ビットと最上位ビットは、それらの論理積が0で論理和が1ですから、いずれも一方が1で他方が0です
 したがって、二つの値は、以下の四つの組み合わせのいずれかとなりますが、どの場合も、加算した和の値は1101となります。

     ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐      │0││0│      │0││1│      └─┴─┴─┴─┘      └─┴─┴─┴─┘      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐    + │1││1│    + │1││0│      └─┴─┴─┴─┘      └─┴─┴─┴─┘    ───────────    ───────────      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐      │1│1│0│1│      │1│1│0│1│      └─┴─┴─┴─┘      └─┴─┴─┴─┘      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐      │1││0│      │1││1│      └─┴─┴─┴─┘      └─┴─┴─┴─┘      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐    + │0││1│    + │0││0│      └─┴─┴─┴─┘      └─┴─┴─┴─┘    ───────────    ───────────      ┌─┬─┬─┬─┐      ┌─┬─┬─┬─┐      │1│1│0│1│      │1│1│0│1│      └─┴─┴─┴─┘      └─┴─┴─┴─┘



BohYoh.comトップページへ