Devi cambiare il comportamento della tua funzione DC in modo che inserisca i dati nell'ordine usato dalla CPU, se devi restituire un long.
Altrimenti, non usare il long ma un array di byte ...
Mostrami il codice della DC e dimmi come arrivano i dati nella stringa valore ...