apprentisssage, gambas 2, gambas 3, mathematique, Tutoriel - Booleen - Les manipulation de bits -

Booleen - Les manipulation de bits

( Temps de lecture estimé à 1 min 45 sec )




Manipulation de Bits

bits.png

La manipulation de bits sous gambas est une chose aisée car il existe beaucoup de fonctions dont voici la liste :
BClr     Efface un bit dans un nombre entier.
BSet     Positionne un bit dans un nombre entier.
BTst     Teste un bit dans un nombre entier.
BChg     Inverse un bit dans un nombre entier.
Lsl     Décale un nombre entier vers la gauche.
Lsr     Décale un nombre entier vers la droite.
Shl / Asl     Décale un nombre entier vers la gauche et conserve son signe.
Shr / Asr     Décale un nombre entier vers la gauche et conserve son signe.
Rol     Rotation d’un entier vers la gauche.
Ror     Rotation d’un entier vers la droite.

Par l'intermédiaire de ce petit exemple, vous pourrez suivre l'evolution de votre nombre binaire.


TELECHARGER L'EXEMPLE ICI

Voici le code sourcec de cet exemple :

' Gambas class file

PUBLIC SUB Form_Open()
ME.Center
END

PUBLIC SUB Button2_Click()
ME.Close
END

PUBLIC SUB Button1_Click()
TextArea1.Clear
TextArea1.Insert("conversion en binaire de votre nombre : " & Bin$(ValueBox1.Value) & Chr$(10))
TextArea1.Insert("Effacement du bit 2 avec Bclr : " & Bin$(BClr(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Positionne le bit grace à Bset : " & Bin$(BSet(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Test du bit 2 avec Btst : " & Bin$(BTst(ValueBox1.Value, 2)) & Chr$(10))
TextArea1.Insert("Change le bit 2 avec BChg : " & Bin$(BChg(ValueBox1.Value, 2)) & Chr$(10))
TextArea1.Insert("Decale le nombre entier vers la gauche avec Lsl : " & Bin$(Lsl(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Decale le nombre entier vers la droite avec Lsr : " & Bin$(Lsr(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Décale un nombre entier vers la gauche et conserve son signe avec Asl : " & Bin$(Asl(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Décale un nombre entier vers la gauche et conserve son signe avec Asr : " & Bin$(Asr(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Rotation d’un entier vers la gauche avec Rol : " & Bin$(Rol(ValueBox1.Value, 1)) & Chr$(10))
TextArea1.Insert("Rotation d’un entier vers la droite avec Ror : " & Bin$(Ror(ValueBox1.Value, 1)) & Chr$(10))
END



Date de creation :
Redacteur : Rédigé par spheris
Classé dans : apprentisssage, gambas 2, gambas 3, mathematique, Tutoriel