Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3180 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Octet et Bit

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Octet et Bit

n°2009126
ziedchen
PSN:Ziedzou
Posté le 14-07-2010 à 12:43:35  profilanswer
 

Bonjour a tous !  
 
Une petite question pour un jour de glande nationale.  
 
Voila j ai un mot ( qui se trouve Fifo-->u8payload[3] ) de 8 bits , donc de 1 octet.
 
qui se lit comme ca:
bit      Description
0        Char size    
1        Char size 1                                                                                      
2        Char size 2                                                                                      
3        Stop bit                                                                                          
4        Paritiy mode
5        Parity mode 1
6        Flow control
7        Reserved.
 
 
Et j aurais aime lire les trois premiers bits pour avoir  mon char size, puis lire mon bit 3, lire mon bit 4 et 5 ensemble et enfin le bit 6.
 
Voici  le tableau du Char size par exemble
 
  | Value  |  Char size
      000          5-bit
      001          6-bit
      010          7-bit
      111          9-bit
 
 
Voila je vous remercie par avance :)

mood
Publicité
Posté le 14-07-2010 à 12:43:35  profilanswer
 

n°2009216
gilou
Modérateur
Modosaurus Rex
Posté le 15-07-2010 à 09:26:05  profilanswer
 

si ton mot est w,

Citation :

Et j aurais aime lire les trois premiers bits

c'est (w & 0x07) puisque 0x07 c'est le masque binaire 00000111

Citation :

puis lire mon bit 3

c'est ((w & 0x08)?1:0) ce qui peut aussi se faire comme ((w & 0x08)>>3)

Citation :

lire mon bit 4 et 5 ensemble

c'est ((w & 0x30)/0x10) ce qui peut aussi se faire comme ((w & 0x30)>>4)

Citation :

enfin le bit 6

c'est ((w & 0x40)?1:0) ce qui peut aussi se faire comme ((w & 0x40)>>6)
A+,

Message cité 1 fois
Message édité par gilou le 15-07-2010 à 09:32:30

---------------
There's more than what can be linked! --  Le capitaine qui ne veut pas obéir à la carte finira par obéir aux récifs. -- Il ne faut plus dire Sarkozy, mais Sarkozon -- (╯°□°)╯︵ ┻━┻
n°2009219
ziedchen
PSN:Ziedzou
Posté le 15-07-2010 à 10:00:57  profilanswer
 

Bonjour Gilou,  
 
Merci pour ta reponse en premier lieu !
 
J y ai pense hier soir, mais j avais plutot eu l idee de faire simplement comme ca
 
size[0=w&0x07;   //char size
size[1]=w&0x08;  // stop bits
size[2]=w&0x30;  // parity mode
size[3]=w&0x40;  // flow control
 
Mais je viens de me rendre compte que j avais faux, si je n utilise pas les "shift left" ?  
 
Merci encore une fois !


Message édité par ziedchen le 15-07-2010 à 10:02:52
n°2009718
Sve@r
Posté le 17-07-2010 à 21:58:14  profilanswer
 

gilou a écrit :

c'est ((w & 0x30)/0x10) ce qui peut aussi se faire comme ((w & 0x30)>>4)


Rajoutons que le décalage est plus rapide que la division...

Message cité 1 fois
Message édité par Sve@r le 17-07-2010 à 21:58:30

---------------
Vous ne pouvez pas apporter la prospérité au pauvre en la retirant au riche.
n°2009720
BMenez
Posté le 17-07-2010 à 22:05:11  profilanswer
 

Sve@r a écrit :

Rajoutons que le décalage est plus rapide que la division...


 
Mais que les compilateurs modernes savent transformer une division en décalage :)

n°2031547
Triple-Mit​su
Posté le 22-10-2010 à 17:46:06  profilanswer
 

BMenez a écrit :


 
Mais que les compilateurs modernes savent transformer une division en décalage :)


 
À condition que le diviseur soit une puissance de 2 :o
 
moto-proof

n°2031555
Joel F
Real men use unique_ptr
Posté le 22-10-2010 à 18:20:50  profilanswer
 

nonon , une division entiére ca suffira.
Dans le cas non puissance de 2 y a des algo pour.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Octet et Bit

 

Sujets relatifs
Transformer jpg en octet : System.Drawing.Bitmap => Byte[]créer un convertisser d' octet
Supprimer un octet d'un exécutable ?[C] ecrire un entier en octet (avec n octets donnes)
passer de 8 octetcs à 1 octet[C] Copier un fichier octet par octet dans un tableau
Conversion char 1 octet <> 2 octetsEcrire un octet binaire dans un fichier
octet -> 2quartetComment lire un fichier en mode binaire octet par octet ?
Plus de sujets relatifs à : Octet et Bit


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)