|
- HalfAdder::HalfAdder()
- {
- w1.ConnectInput(F1,1);
- w1.ConnectOutput(A,0);
- w2.ConnectInput(F1,0);
- w2.ConnectOutput(N1,0);
- w3.ConnectInput(F2,0);
- w3.ConnectOutput(A,1);
- w4.ConnectInput(F2,1);
- w4.ConnectOutput(N1,1);
- w5.ConnectInput(N1,0);
- w5.ConnectOutput(N2,1);
- w6.ConnectInput(A,0);
- w6.ConnectOutput(F3,0);
- w7.ConnectInput(F3,0);
- w7.ConnectOutput(N2,0);
- }
-
- HalfAdder::~HalfAdder() {}
-
- void HalfAdder::ChangeInput (State s, int pin)
- {
- if (pin==0) F1.ChangeInput(s,0);
- if (pin==1) F2.ChangeInput(s,0);
- }
-
- void HalfAdder::Action () {}
-
- void HalfAdder::ConnectInput (Wire& w, int pin)
- {
- // Wird von Connect-Funktion des Drahtes aufgerufen
- if (pin==0) F1.ConnectInput(w,0);
- if (pin==1) F2.ConnectInput(w,0);
- }
-
- void HalfAdder::ConnectOutput (Wire& w, int pin)
- {
- // Wird von Connect-Funktion des Drahtes aufgerufen
- if (pin==0) N2.ConnectOutput(w,0);
- if (pin==1) F3.ConnectOutput(w,1);
- }
|