Les Snippets

Connexion

Byte Swap sur entier 16, 32 et 64 bits

Niveau requis pour utiliser/comprendre cette source : 2 ( Initié )
Créé le 05/07/2008 15:54:28 et initié par f0xi [Liste]
Vue : 1258
Catégorie(s) : Trucs & Astuces, Algorithme, Système, Divers
Langage sélectionné : Delphi 5
Langages dispo pour ce code :
- Assembleur x86, Delphi 5
- Voir tous les langages pour ce code snippet



Langage : Delphi 5 , Assembleur x86
Date ajout : 05/07/2008
Posté par f0xi [Liste]
{ BSwap sur entier 16bits }
function BSwap(const a : word) : word;
asm
  XCHG AL, AH;
end;

{ BSwap sur entier 32 bits }
function BSwap(const a : longword) : longword;
asm
  BSWAP EAX;
end;

{ BSwap sur entier 64 bits }
function BSwap(const a : int64) : int64;
asm
  MOV EDX,[EBP+$08];
  MOV EAX,[EBP+$0C];
  BSWAP EAX;
  BSWAP EDX;
end;

{ BSwap sur n'importe quoi }
procedure BSwap(const InBuffer; var OutBuffer; const BufferLen: integer);
var pI, pO : ^byte;
    N : integer;
begin
  pI := @InBuffer;
  pO := @OutBuffer;
  inc(pO, BufferLen-1);
  for N := 0 to BufferLen-1 do
  begin
    pO^ := pI^;
    inc(pI);
    dec(pO);
  end;
end;


Snippets en rapport avec : Bswap, Entier, Byteswap, Swapping, Echange



Codes sources en rapport avec : Bswap, Entier, Byteswap, Swapping, Echange

{PHP} VÉRIFIER SI VOS PARTENAIRES ONT GARDÉ VOS LIENS SUR LEUR SITE?
Faire un site c'est aussi le diffuser sur Internet. Un des meilleurs moyen reconnu est le partage de...

{Delphi} RACINE CARRÉE ENTIÈRE
Rien de révolutionnaire ici. Cette petite fonction recherche la racine carré (ou la racine cubique ...

{JAVA / J2EE} ROMANOP : UN UTILITAIRE POUR LES NOMBRES ROMAINS (CONVERSION ROMAN -> ENTIERS, ENTIERS -> ROMAINS, CALCULS...)
Voici une utilitaire sur les nombres romains. Il permet la conversion de nombres romains vers les en...

{Flash} ECHANGE DES DONNÉES ENTRE FLASH & JSP & FICHIER TXT
Bonjour, Je propose ce petit exemple pour montrer les échanges de la donnée entre ...

{Delphi} GESTIONNAIRE SOUCHOTHÈQUE
Slt tt le monde ;-) Chers consultants je suis très débutant dans le domaine de la programmation e...

{JAVA / J2EE} VERSION JAVA DE : ROMANUTILS, TOUT POUR CONVERTIR LES CHIFFRES ROMAINS VERS LES ENTIERS ET INVERSEMENT
Rapide portage de l'excellente source Delphi disponible à http://www.delphifr.com/code.aspx?ID=344...

{Visual Basic, VB6, VB.NET, VB 2005} GESTION DES FICHIERS SWAP
Voici un ptit soft pour gerer le(s) fichier(s) swap de Windows Les fonctionnalites sont a peu pre...

{C / C++ / C++.NET} ENTIER 256 BITS ET +
Une petite classe qui defini un type d'entier non signee tres tres long...

{Delphi} CONVERSION LITTÉRALE D' 1 NOMBRE EN PORTUGAIS
Non, je fais pas concurrence à Japee! Je présente ici une solution que je devais vendre mais finale...

{PHP} WYMIENPHP 1.1 (ECHANGEZ VOS FICHIERS AGRÉABLEMENT)
Script Portail d'échange de fichiers, entièrement personalisable. Possibilité de mettre des droits s...