Accueil > Non classé > [C] Permuter deux bits

[C] Permuter deux bits

Voici un petit code en C qui permet de permuter deux bits en une seule ligne. Je l’utilisais lorsque je codais sur un système embarqué, peut-être que ça en aidera d’autres. Bref, le voici:

#include
#include
#include
#include

//0xA8 = b10101000
//0xB0 = b10110000 after permute bit 3 with bit 4

int main()
{
unsigned char* SCICR1;
*SCICR1 = 0xA8;

printf("%x\n", *SCICR1);

*SCICR1 = (*SCICR1&0xE7)|((*SCICR1&0x08)<<1)|((*SCICR1&0x10)>>1);

printf("%x", *SCICR1);
return 0;
}

Categories: Non classé Tags:
  1. Pas encore de commentaire
  1. Pas encore de trackbacks