Example #1
0
 public UnitàOperativa()
 {
     _sr        = ShiftRegister.GetInstance();
     _alu       = ALU.GetInstance();
     _busC      = BusC.GetInstance();
     _busB      = BusB.GetInstance();
     _registers = Registro.GetInstance();
     _systemBus = BusDiSistema.GetInstance();
 }
        public void execute_op()
        {
            Dato = Operation switch
            {
                "10" => SLL8(), //scorrimento logico a sinistra
                "01" => SRA1(), //scorrimento aritmetico a destra
                _ => Dato
            };

            _busC      = BusC.GetInstance();
            _busC.Dato = Dato; //scrittura risultato nel bus C

            DebugInfo();
        }
 public ShiftRegister()
 {
     _busC     = BusC.GetInstance();
     Dato      = "00000000000000000000000000000000";
     Operation = "00";
 }