Hallo, es geht um Bitreverse elegant programmieren. Ich hab mir gedacht:
1 | bla = ((bla >> 4) & 0x0F)|((bla << 4) & 0xF0); |
2 | bla = ((bla >> 2) & 0x33)|((bla << 2) & 0xCC); |
3 | bla = ((bla >> 1) & 0x55)|((bla << 1) & 0xAA); |
oder wär
1 | asm("rol r24"); |
2 | asm("ror r25"); |
3 | asm("rol r24"); |
4 | asm("ror r25"); |
5 | asm("rol r24"); |
6 | asm("ror r25"); |
7 | asm("rol r24"); |
8 | asm("ror r25"); |
9 | asm("rol r24"); |
10 | asm("ror r25"); |
11 | asm("rol r24"); |
12 | asm("ror r25"); |
13 | asm("rol r24"); |
14 | asm("ror r25"); |
15 | asm("rol r24"); |
16 | asm("ror r25"); |
das in ASM so besser?