def ReverseByteOrder(data): """ Method to reverse the byte order of a given unsigned data value Input: data: data value whose byte order needs to be swap data can only be as big as 4 bytes Output: revD: data value with its byte order reversed """ s = "Error: Only 'unsigned' data of type 'int' or 'long' is allowed" if not ((type(data) == int)or(type(data) == long)): s1 = "Error: Invalid data type: %s" % type(data) print(''.join([s,'\n',s1])) return data if(data < 0): s2 = "Error: Data is signed. Value is less than 0" print(''.join([s,'\n',s2])) return data seq = ["0x"] while(data > 0): d = data & 0xFF # extract the least significant(LS) byte seq.append('%02x'%d)# convert to appropriate string, append to sequence data >>= 8 # push next higher byte to LS position revD = int(''.join(seq),16) return revD