1 package net.mograsim.logic.model.am2900.machine.registers.am2910.stack;
3 import java.util.ArrayList;
4 import java.util.Collections;
7 import net.mograsim.logic.model.am2900.machine.registers.Am2900Register;
8 import net.mograsim.machine.registers.HighLevelStateBasedRegister;
10 public class StackCellRegister extends HighLevelStateBasedRegister implements Am2900Register
12 public static final List<StackCellRegister> instancesCorrectOrder;
16 List<StackCellRegister> instancesCorrectOrderModifiable = new ArrayList<>();
17 for (int i = 0; i < 5; i++)
18 instancesCorrectOrderModifiable.add(new StackCellRegister(i));
19 instancesCorrectOrder = Collections.unmodifiableList(instancesCorrectOrderModifiable);
22 private StackCellRegister(int index)
24 super("cell #" + index, "am2910.stack.c" + getIndexAsBitstring(index) + ".q", 12);
28 private static String getIndexAsBitstring(int index)
30 StringBuilder sb = new StringBuilder();
31 sb.append((index & 0b100) != 0 ? '1' : '0');
32 sb.append((index & 0b010) != 0 ? '1' : '0');
33 sb.append((index & 0b001) != 0 ? '1' : '0');