+
+ @Override
+ public void setDirectly(Register r, String val_4_bit)
+ {
+ am2901.setHighLevelState(regToStateID(r), BitVector.parseMSBFirst(val_4_bit));
+ }
+
+ @Override
+ public String getDirectly(Register r)
+ {
+ return ((BitVector) am2901.getHighLevelState(regToStateID(r))).toBitStringMSBFirst();
+ }
+
+ private static String regToStateID(Register r)
+ {
+ if (r == Register.Q)
+ return "qreg.q";
+ return "regs.c" + r.toBitString() + ".q";
+ }