Nardo26
Nombre de messages : 2294 Age : 56 Localisation : Valence Date d'inscription : 02/07/2010
| Sujet: Conversion hexadécimale d’un nombre au format intel Mer 29 Aoû 2012 - 11:12 | |
| Bonjour, Actuellement lorsque l’on veut récupérer une valeur codée en format intel sur 4 octets dans un fichier binaire on fait comme ceci : - Code:
-
FOR i = 1 TO 4 FILEBIN_READ 1, TabOctet%(i) NEXT i Valeur% = TabOctet%(1) + 256 * TabOctet%(2) + 65536* TabOctet%(3) + 16777216* TabOctet%(4) Il faut reconnaitre que c'est un peu fastidieux : Il faut déclarer un tableau d'octets puis faire ensuite des multiplications dans le bon ordre pour arriver au résultat final. Pourtant il existe deux fonctions qui permettrai de simplifier les choses : - Code:
-
FILEBIN_HEXA_READ 1, 4, chaine$ Valeur% = HEX(chaine$) Malheureusement ce dernier exemple ne fonctionne pas car la valeur hexa contenue dans chaine$ est au format intel (poids faible suivi du poids fort). Comment faire ? - Modifier la commande HEX(n) et lui rajouter un 2ème paramètre indiquant le type de format ?
- Créer une commande BIN_ROLL(v,n) pour réaliser une rotation des bits ?
| |
|