正答1
解説
正解は1です。
この問題は、半加算器の構成を問うています。
図では、入力xとyがそれぞれ素子Aと素子Bに入り、Aからz(和の1けた目)、Bからc(けた上げ)が出力されています。
1けたの2進数の加算では、0+0=0、0+1=1、1+0=1、1+1=10(2進数)になります。
【計算】
zは、x、yの一方だけが1のとき1になり、両方1のときは0になります。
これは排他的論理和の真理値表と同じです。
cは、x、yの両方が1のときだけ1になります。
これは論理積の真理値表と同じです。
【選択肢別解説】
1:○ Aを排他的論理和、Bを論理積にすると、和とけた上げを正しく出力できます。
2:× 否定論理積(NAND)は、x=0、y=0のときに1を出力します。
0+0の和は0なので、Aとして使えません。
3:× 否定論理和(NOR)も、x=0、y=0のときに1を出力するので、Aとして使えません。
また、Bに排他的論理和を使うと、1+0のときにけた上げが1になってしまいます。
4:× Aを論理積にすると、1+0のときzが0、1+1のときzが1になり、和と逆の結果が出る組合せがあります。
Bを論理和にすると、1+0でもけた上げが1になってしまいます。
【ポイント】
半加算器は「和=XOR、けた上げ=AND」です。
半加算器2個とOR1個を組み合わせると、下位からのけた上げも扱える全加算器になります。