An example of what I mean by reversing is this:
1010 = 0101 1110 = 0001 1100 = 0011 etc..
1010 = 0101 1110 = 0001 1100 = 0011 etc..
|
|
|
uint8_t lookup[16] = {
0x0, 0x8, 0x4, 0xC,
0x2, 0xA, 0x6, 0xE,
0x1, 0x9, 0x5, 0xD,
0x3, 0xB, 0x7, 0xF };
uint8_t flipbits( uint8_t n )
{
return (lookup[n & 0x0F] << 4) | lookup[n >> 4];
}
Quote
unsigned int swap(unsigned int value)
{
value = ((value & 0xFFFF0000) >> 16) | ((value & 0x0000FFFF) << 16);
value = ((value & 0xFF00FF00) >> 8) | ((value & 0x00FF00FF) << 8);
value = ((value & 0xF0F0F0F0) >> 4) | ((value & 0x0F0F0F0F) << 4);
value = ((value & 0xCCCCCCCC) >> 2) | ((value & 0x33333333) << 2);
value = ((value & 0xAAAAAAAA) >> 1) | ((value & 0x55555555) << 1);
return value;
}
zoranh said:
zoranh said:
Momerath said:
Nullw0rm said:
0 members, 1 guests, 0 anonymous users