begin process at 2012 02 12 18:18:08
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Fichier / Disque

 > CONVERSION BIG-ENDIAN EN LITLE-ENDIAN

CONVERSION BIG-ENDIAN EN LITLE-ENDIAN


 Information sur la source

Note :
Aucune note
Catégorie :Fichier / Disque Niveau :Débutant Date de création :18/07/2002 Date de mise à jour :18/07/2002 16:01:59 Vu :2 375

Auteur : YahnIck

Ecrire un message privé
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

lorsque l'on veut utiliser des données binaires créées à partir d'une station UNix, il est difficile de les lires avec un PC. Car les données binaires sont inversées. Sous station les données binaires sont de type Big-endian et sous PC de type Litle endian.(inversement des deux chaines d'octets). Donc voici un exemples de code permettant de lire du Big endian avec VB6. Je mesuis inspiré d'un code qui le faisait avec des long ici je le fait avec de integer cours(16 octets)

Source

  • Type intType
  • L As Integer
  • End Type
  • Type DWordType 'division de l'integer en 2*8octets pour faire l'inversion
  • High As Byte
  • Low As Byte
  • End Type
  • Sub Swap(LE As Integer, swapwords As Integer)' procedure permettant d'inverser les 2*8Octets
  • Dim TempLong As intType
  • Dim TempDWord As DWordType
  • Dim TempInt As Byte
  • TempLong.L = LE
  • LSet TempDWord = TempLong
  • TempInt = TempDWord.High
  • TempDWord.High = TempDWord.Low
  • TempDWord.Low = TempInt
  • LSet TempLong = TempDWord
  • swapwords = TempLong.L
  • End Sub
Type intType
    L As Integer
End Type

Type DWordType 'division de l'integer en 2*8octets pour faire l'inversion
    High As Byte
    Low As Byte
End Type

Sub Swap(LE As Integer, swapwords As Integer)' procedure permettant d'inverser les 2*8Octets
    Dim TempLong As intType
    Dim TempDWord As DWordType
    Dim TempInt As Byte
    TempLong.L = LE
    LSet TempDWord = TempLong
    TempInt = TempDWord.High
    TempDWord.High = TempDWord.Low
    TempDWord.Low = TempInt
    LSet TempLong = TempDWord
    swapwords = TempLong.L
End Sub

 Conclusion

pour les integer long
il suffit de déclarer L, LE et Swapwords en long
et high,lowet tempint en integer



 Sources de la même categorie

Source avec Zip Source .NET (Dotnet) MODIFIER LES EXTENSION DES FICHIERS par okosa
ROUTINE DIR RÉCURSIVE POUR OBTENIR LA LISTE DE TOUS LES FICH... par kerisolde
Source avec Zip Source avec une capture FILE,SECURITY,FICHIER par okosa
Source avec Zip Source avec une capture Source .NET (Dotnet) PATCHEUR DE FICHIER par tototh
Source avec Zip Source avec une capture LECTURE DES INFORMATIONS DES DISQUES COMPOSANT UN ENSEMBLE R... par jack

Commentaires et avis

Commentaire de OphidiaN le 18/07/2002 23:46:48

fallait savoir... :)

Commentaire de YahnIck le 19/07/2002 11:28:54

ah oui au fait
c'est pas 16 octets mais 2 octets de 8 bits chacun

Commentaire de mightykay le 19/02/2004 05:35:27

euuuu désolé mé jcomprend pas trop ton truc tu pourrais me donner un exemple ???
d'utilisation?
je sait que en gros ca donne un truc du genre

000000FF
et FF000000
mais pour lutilisation de ton truc je pige pas

Commentaire de dthuler le 13/10/2007 21:54:09

Super! je l'ai à peine modifié, ça marche nickel! exactement ce que je cherchais pour les long!!!

Commentaire de jjenny le 11/11/2008 14:08:33

Super, la conversion avec des short integer est parfaite, mais je n'arrive pas à transformer la routine pour les entiers longs SOS ! Merci

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,622 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales