基礎理論
半加算器2つと1つのORゲートで構成された全加算器において、A=1, B=1, Cin(下位からの桁上がり入力)=1 のとき、出力の合計ビットS(Sum)と上位への桁上がりCout(Carry out)の値の組合せとして正しいものはどれか。
ア.S=1, Cout=1正解
イ.S=0, Cout=0
ウ.S=1, Cout=0
エ.S=0, Cout=1
解説
全加算器は「1桁の筆算をハードウェアで実現」したもの。1+1+1=11₂(2進数で合計3)。S=合計の下位ビット、Cout=桁上がり。
なぜ ア が正解か
Step1: 第1半加算器でA,Bを加算。A=1, B=1 → Sum1=A XOR B=0、Carry1=A AND B=1。Step2: 第2半加算器でSum1とCinを加算。Sum1=0, Cin=1 → S=Sum1 XOR Cin=0 XOR 1=1、Carry2=Sum1 AND Cin=0 AND 1=0。Step3: ORゲートでCarry1とCarry2を合成。Cout=Carry1 OR Carry2=1 OR 0=1。最終: S=1, Cout=1。検算: 1+1+1=3=11₂ → S=1(下位), Cout=1(上位) ✓
出典: AI生成問題(学習用)