private void loadOperands(){
		if (ins instanceof AddInstruction){
			AddInstruction ai = (AddInstruction) ins;
			address = (short)ai.getRegA().getIndex();
			if (ai.getRegC().getState()==null){
				vals[0] = ai.getRegC().getVal();
				opsReady[0] = true;
			}
			else {
				ai.getRegC().getState().cdb.add(new CommonDataBus(this, 0));
			}
			if (ai.getRegB().getState()==null){
				vals[1] = ai.getRegB().getVal();
				opsReady[1] = true;
			}
			else {
				ai.getRegB().getState().cdb.add(new CommonDataBus(this, 1));
			}
		}
		else if (ins instanceof AddImmediateInstruction){
			AddImmediateInstruction ai = (AddImmediateInstruction) ins;
			address = (short )ai.getRegA().getIndex();
			vals[0] = ai.getImm();
			opsReady[0] = true;
			if (ai.getRegB().getState()==null){
				vals[1] = ai.getRegB().getVal();
				opsReady[1] = true;
			}
			else {
				ai.getRegB().getState().cdb.add(new CommonDataBus(this, 1));
			}
		}
		else if (ins instanceof SubtractInstruction){
			SubtractInstruction si = (SubtractInstruction) ins;
			address = (short )si.getRegA().getIndex();
			if (si.getRegC().getState()==null){
				vals[0] = si.getRegC().getVal();
				opsReady[0] = true;
			}
			else {
				si.getRegC().getState().cdb.add(new CommonDataBus(this, 0));
			}
			if (si.getRegB().getState()==null){
				vals[1] = si.getRegB().getVal();
				opsReady[1] = true;
			}
			else {
				si.getRegB().getState().cdb.add(new CommonDataBus(this, 1));
			}
		}
	}