@Override
	public Data assembleOperand(List<String> operandParts) {
		//All operand part arrays will contain 3 parts: label, DATA declaration, and operand value
		String label = operandParts.get(0).substring(0, operandParts.get(0).length() -1); //Trim semicolon from label
		lookupTable.put(label, operandAddressPointer); //Map label to address (address given by line number)		
		
		String operandString = operandParts.get(2); //Operand value as String
		int operandValue;
		try {
			operandValue = Integer.parseInt(operandString); //Attempt to parse String to integer
		}
		catch (NumberFormatException nfe) { //If the String cannot be parsed to integer (i.e. bad operand value)
			JOptionPane.showMessageDialog(null, "Assembly program syntax error: Invalid operand declaration \"" + operandString +
					"\".", "Assembly Program Error", JOptionPane.WARNING_MESSAGE);
			return null; //Return null in the event of an error; prevents further parsing of file and flags error to user
		}
		
		Data operand = new OperandImpl(operandValue); //Create the operand
		
		return operand;		
	}