Récupération du bit de signe
Bonjour,
Je pense que je vais devoir plonger dans un mixe C++/ASM, mais le forum le plus approprié me parait être celui-ci .
Alors voila, je voudrais récupérer le bit de signe d'un entier. Ma première idée était de faire :
Code:
1 2
|
bool bit_de_signe = monEntier <<1; //BIGENDIAN |
Problème, je ne récupère pas le bit de signe, mais je le perds justement (remémoration de mes cours d'ASM en DUT ~7ans :aie:).
Du coup je voulais savoir si je peux récupérer le flag qui récupère ce bit ? J'ai vu que c'était le flag CF.
En fait je voudrais savoir si y a une manière "simple" et surtout efficace de le faire ...
Explication :
Au lieux de faire
Code:
1 2 3 4 5 6 7 8 9 10
|
for(...)
{
if( maVar==-1 )
X = val_0;
else if( maVar ==1 )
X = val_1;
else
X = val_2;
} |
Je comptais faire :
Code:
1 2 3 4
|
int conv[]={val_1, val_2}
for(...)
X=(bitSign==true)?val_0:conv[maVar] |
Le problème de de récupéré efficacement le bit de signe pour que ma méthode illisible soit elle même efficace ...
Merci d'avance.