Accèder aux bits

cs_dunith Messages postés 100 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 11 avril 2008 - 28 janv. 2008 à 10:54
cs_dunith Messages postés 100 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 11 avril 2008 - 29 janv. 2008 à 08:48
bonjour!

je trvaille toujours sur mon buffer:

String sTemp;
//reponse.sRep; reponse est une classe de la réponse du buffer où on a déclaré sRep de type String
sTemp = reponse.sRep.substring(5,7);// qui correspondent aux bytes S1 S2 S3

et dans mon S1 ( qui a 8 bits) on s'interesse aux bit 0 et bit 1
et dans mon S2  ( qui a 8 bits), on s'intersse au bit 6
et dans mon S3  ( qui a 8 bits), on s'intersse au bit 6

et tous ses bit de S1 S2 S3, je les mets dans mon bufferIn[2]( de type entier, déclaré dans ma classe reponse ):
quelq'un peut me dire comment je dois accéder à ses bits de S1 S2 S3 et les mettre dans mon bufferIn[2]?

merci

2 réponses

cs_dunith Messages postés 100 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 11 avril 2008
28 janv. 2008 à 11:42
bonjour

c'est encore moi!

j'ai regardé sur java.lang et j'ai trouvé la méthode charAt(int index):
alors j'ai mis mon code comme suit:
reponse.bufferIn[2] = sTemp.charAt(0) + sTemp.charAt(1) + sTemp.charAt(14) + sTemp.charAt(22);

sachant que S1S2S3 (qui a 8*3 bits) sont dans sTemp.
 
quelq'un peut dire si mon code était juste ou non?

merci
0
cs_dunith Messages postés 100 Date d'inscription samedi 5 janvier 2008 Statut Membre Dernière intervention 11 avril 2008
29 janv. 2008 à 08:48
bonjour

j'ai refaii mon code, et j'ai mis comme suit, je n'ai pas d'erreur de compilation; mais je ne peux pas tester :

int iTemp;
iTemp = Integer.parseInt(reponse.sRep.substring(5,8));

//on s'interesse , au bit6 pour S3, au bit6 S2 aux bits 0 et 1 pour S1
 reponse.bufferIn[2]= (iTemp>>6) & 0xFF + (iTemp>>14) & 0xFF +(iTemp>>16) & 0xFF + (iTemp>>17) & 0xFF;

quelq'un peux me dire si c'est juste?
merci
0
Rejoignez-nous