J'ai un problème avec l'expression suivante:
Code :
- signed char var= -128; //1000 0000 binaire
- var >> shift ; //réplication du bit de signe: 1100 0000 binaire
- (unsigned char)var >> shift ; //insertion de 0 : 0100 0000 binaire
|
Si var est de type signé, le bit de poids fort est répliqué au décalage, ce que je ne souhaite pas.
Mais je ne peut pas utiliser de cast "unsigned" parceque le type est un paramètre de patron.
Comment faire ?
Accessoirement, quelqu'un sait-il écrire le code assembleur pour faire une rotation de bits sur une variable C ?
8,16,32 bits ou plus SVP.
---------------
Bricocheap: Montage de ventilo sur paté de mastic silicone