1
5 public class FullAdderComponent {
6
7 private HalfAdderComponent ha1;
9 private HalfAdderComponent ha2;
10 private Gate or;
11
12 public FullAdderComponent(Gate x, Gate y, Gate cIn) {
13
14 ha1 = new HalfAdderComponent( x, y);
16 ha2 = new HalfAdderComponent( ha1.getSum(), cIn);
17 or = new Gate( ha1.getCarry(), "OR", ha2.getCarry());
18 }
19
20 public void operate() {
22 ha1.operate();
23 ha2.operate();
24 or.operate();
25 }
26
27 public Gate getSum() {
29 return ha2.getSum();
30 }
31
32 public Gate getCarryOut() {
34 return or;
35 }
36
37 }
38