MCPcopy Create free account
hub / github.com/RobTillaart/Arduino / reverse64

Function reverse64

libraries/CRC/CRC.cpp:55–65  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

53
54
55uint64_t reverse64(uint64_t in)
56{
57 uint64_t x = in;
58 x = (((x & 0xAAAAAAAAAAAAAAAA) >> 1) | ((x & 0x5555555555555555) << 1));
59 x = (((x & 0xCCCCCCCCCCCCCCCC) >> 2) | ((x & 0x3333333333333333) << 2));
60 x = (((x & 0xF0F0F0F0F0F0F0F0) >> 4) | ((x & 0x0F0F0F0F0F0F0F0F) << 4));
61 x = (((x & 0xFF00FF00FF00FF00) >> 8) | ((x & 0x00FF00FF00FF00FF) << 8));
62 x = (((x & 0xFFFF0000FFFF0000) >> 16) | ((x & 0x0000FFFF0000FFFF) << 16));
63 x = (x >> 32) | (x << 32);
64 return x;
65}
66
67
68///////////////////////////////////////////////////////////////////////////////////

Callers 1

crc64Function · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected