Selectionner un bit dans un octet

Résolu
Chrisly74 Messages postés 23 Date d'inscription lundi 10 avril 2006 Statut Membre Dernière intervention 11 mai 2006 - 12 avril 2006 à 10:34
Chrisly74 Messages postés 23 Date d'inscription lundi 10 avril 2006 Statut Membre Dernière intervention 11 mai 2006 - 12 avril 2006 à 14:20
bonjour
j'ai besoin de selectionner le premier bit dans un octet
voici la partie de mon programme

numberOfBytesRead = networkStream.Read(myReadBuffer, 0, myReadBuffer.Length)
LstOutputCli.Items.Insert(LstOutputCli.Items.Count, myReadBuffer(0))
BitSync = myReadBuffer(0)

le probleme est que myReadBuffer(0) est un octet et moi je veux juste le premier bit de cet octet

merci

6 réponses

beepcool Messages postés 6 Date d'inscription lundi 21 juillet 2003 Statut Membre Dernière intervention 12 avril 2006
12 avril 2006 à 12:08
voici, deux moceaux de code : l'un pour tester et l'autre pour affecter un bit.

pour tester un bit :
Dim OctetATester As Byte
Dim BitATester As Byte

BitATester = &H80 ' bit de poid le plus fort

OctetATester = &H12

If (OctetATester And BitATester) = BitATester Then
MsgBox "byte ok"
Else
MsgBox "byte ko"
End If

pour affecter un 1 à un bit :
Dim OctetAAffecter As Byte
Dim BitAAffecter As Byte

BitAAffecter = &H80 ' bit de poid le plus fort

OctetAAffecter = &H12
OctetAAffecter =OctetAAffecter or BitAAffecter

pour affecter un 0 à un bit :

Dim OctetAAffecter As Byte
Dim BitAAffecter As Byte

BitAAffecter = &H80 ' bit de poid le plus fort

OctetAAffecter = &H12
OctetAAffecter =OctetAAffecter and not( BitAAffecter )

beepcool
3
Profil bloqué
12 avril 2006 à 12:18
Salut Chrisly
Si le premier bit de ton octet est le bit 0
Dans ce cas pour avoir sa valeur tu peux faire

BitSync = myReadBuffer(0) and 1

GRENIER Alain[8D]
3
Profil bloqué
12 avril 2006 à 11:57
Salut Chrisly
Je suppose que le premier bit de ton octet est le bit 7
Dans ce cas pour avoir sa valeur tu peux faire

BitSync = myReadBuffer(0) \ 128

GRENIER Alain[8D]
0
Chrisly74 Messages postés 23 Date d'inscription lundi 10 avril 2006 Statut Membre Dernière intervention 11 mai 2006
12 avril 2006 à 12:03
le premier bit de mon octet est le bit 0

merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Chrisly74 Messages postés 23 Date d'inscription lundi 10 avril 2006 Statut Membre Dernière intervention 11 mai 2006
12 avril 2006 à 13:40
Merci bien les gars je vais essayer et je vous tiens au courant
0
Chrisly74 Messages postés 23 Date d'inscription lundi 10 avril 2006 Statut Membre Dernière intervention 11 mai 2006
12 avril 2006 à 14:20
sa marche encore merci pour votre aide
0
Rejoignez-nous