Voilà, j'ai besoin de convertir une chaine de caractères hexa en une suite de 7 bits (ascii sur 7 bits)
Exemple: Test.s="D4F29C0E"
Je ne sais pas trop comment m'y prendre, si vous avez des pistes?
Convertir un chaine de caractère 8bits vers 7 Bits
-
- Messages : 510
- Inscription : dim. 25/mars/2007 13:44
- Localisation : Toulouse, France
- Contact :
Re: Convertir un chaine de caractère 8bits vers 7 Bits
tu peux convertir la chaine en valeur comme cela:
Mais je ne comprends pas ce que tu veux dire quand tu parle d'une "suite de 7 bits".
Code : Tout sélectionner
Debug Val("$D4F29C0E")
Re: Convertir un chaine de caractère 8bits vers 7 Bits
Je pense que nico veux que chaque caractere de sa chaine soit un octet de 7 bits et pas de 8.
Exemple, le "F" qui est 255 doit etre transformé en 127
C'est ca nico ?
Exemple, le "F" qui est 255 doit etre transformé en 127
C'est ca nico ?
!i!i!i!i!i!i!i!i!i!
!i!i!i!i!i!i!
!i!i!i!
//// Informations ////
Intel Core i7 4770 64 bits - GTX 650 Ti
Version de PB : 6.12LTS- 64 bits
Re: Convertir un chaine de caractère 8bits vers 7 Bits
Oui, au lieu d'avoir une série de plusieurs octets (8 bits), il faut décomposer en une série de 7 bits. Ce qui fait que 3 octets (28 bits) donnera 4 caractères de 7 octets (4*7=28).
J'ai réussi à faire un prog qui fonctionne:
J'ai réussi à faire un prog qui fonctionne:
Code : Tout sélectionner
Dim hexa.s(0)
Dim Binaire.s(0)
Chaine.s="D4F29C0E"
LongueurOctet.l=(Len(Chaine)/2)
ReDim hexa.s(LongueurOctet-1)
b.l=1
For a=0 To LongueurOctet-1
hexa(a)="$"+Mid(Chaine,b,2)
b=b+2
Next a
For a=0 To LongueurOctet-1
Resultat.s=RSet(Bin(Val(hexa(a)), #PB_Byte),8,"0")+Resultat
Next a
b=Len(Resultat)-6
LongueurTexte.l= (Len(Resultat)/7)
ReDim Binaire.s(LongueurTexte-1)
For a=0 To LongueurTexte-1
Binaire(a)="%"+Mid(Resultat,b,7)
b=b-7
Next a
For a=0 To LongueurTexte-1
Texte.s=Texte+ Chr(Val(Binaire(a)))
Next a
Debug Texte