Если dataI должна быть в Little L = ((UL)B[3] << 24) | ((UL)B[2] << 16) | ((UI)B[1] << 8) | B[0]; Если в Big то L = ((UL)B[0] << 24) | ((UL)B[1] << 16) | ((UI)B[2] << 8) | B[3];
А вообще большинство процов Little а те которые и так и эдак(ARM) там настройка есть