added decoding logic to control_unit