|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
| OUExclusif sur de l'hexadecimal |
| Débuté par PBATTU, 03 déc. 2004 16:14 - 2 réponses |
| |
| | | |
|
| |
| Posté le 03 décembre 2004 - 16:14 |
Bonjour j'ai à faire un OUExclusif sur un nombre en hexadecimal dans un programme, mais l'hexa sous windev est connu que sous le format chaine et le OUExclusifBinaire ne prend en compte que le numérique. Comment peut-on faire ? Ceci est pour envoyer une trame contenant un LRC (utilisation du OUExclusif de toutes les valeurs hexa de la trame) sur le port série. On ne peut pas prendre la valeur ASCII du 1er caractère et le Xoré avec la valeur ASCII du 2ème biensur |
| |
| |
| | | |
|
| | |
| |
| Posté le 03 décembre 2004 - 16:58 |
Tu peux utiliser le code suivant:
MaChaineHexa est une chaine MaValeur est un entier MonResultat est un entier MonResultatHexa est une chaine
MaValeur = Val (MaChaineHexa, "x") Monresultat = OuExclusifBinaire (MaValeur, AutreValeur) MonResultatHexa = NumériqueVersChaine (MonResultat, "X") |
| |
| |
| | | |
|
| | |
| |
| Posté le 05 décembre 2004 - 00:14 |
Voici ma procedure qui fonctionne
PROCEDURE CalculLRC(pData) // pData est la chaine lg est un entier //longueur de la chaine i est un entier //index de boucle OuEx est un entier sans signe sur 2 octets //resultat du ou exclusif valeur est un entier sans signe sur 2 octets resultat est un entier sans signe sur 1 octets
lg = Taille(pData) OuEx = 0
QUAND EXCEPTION DANS POUR i=1 A lg valeur = Asc(pData[[i]]) OuEx = OuExclusifBinaire(OuEx,valeur) FIN resultat = ETBinaire(OuEx,0xff)
FAIRE Beep Erreur("Une erreur est intervenue lors du calcul LRC" ,... " Notez l'opération que vous étiez en train de faire" ,... " Notez le numéro les données suivantes : '"+pData+"'") RENVOYER 0 FIN RENVOYER resultat
"Pascal BATTU" <PBATTU@WANADOO.FR> a écrit dans le message de news: 41b06ae1@news.pcsoft.fr...
Bonjour j'ai à faire un OUExclusif sur un nombre en hexadecimal dans un programme,
mais l'hexa sous windev est connu que sous le format chaine et le OUExclusifBinaire ne prend en compte que le numérique. Comment peut-on faire ? > Ceci est pour envoyer une trame contenant un LRC (utilisation du OUExclusif de toutes les valeurs hexa de la trame) sur le port série.
On ne peut pas prendre la valeur ASCII du 1er caractère et le Xoré avec la valeur ASCII du 2ème biensur > |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|