IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Web & réseau Delphi Discussion :

Convertir les valeurs 16-bit du network-byte order pour host-byte order


Sujet :

Web & réseau Delphi

  1. #1
    Membre du Club

    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Décembre 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 33
    Points : 41
    Points
    41
    Par défaut Convertir les valeurs 16-bit du network-byte order pour host-byte order
    Bonjour,

    ç'est comme son titre l'indique, ( convertir les valeurs 16-bit du network-byte order pour host-byte order ) afin d'éviter l'utilisation de l'API Winsock "ntohs".
    -Je suis entrain de faire un filtre pour certains PORTS réseaux, donc besoin d'une fonction (macro) pour remplacer l'utilisation de l'APIS,
    Merci.

  2. #2
    Membre éprouvé
    Avatar de Cirec
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    467
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 467
    Points : 1 072
    Points
    1 072
    Par défaut
    Bonjour,

    je suis pas certain de mon coup
    mais sur les testes que j'ai fait avec l'API Winsock "ntohs"
    ça ressemble à un byte swap
    peut être que ceci fera l'affaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function Swap16(x: UInt16): UInt16;
    begin
      Result := ((x and $ff) shl 8) or ((x and $ff00) shr 8);
    end;
    Cordialement,

    @+

  3. #3
    Membre du Club

    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Décembre 2008
    Messages
    33
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Chercheur en informatique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 33
    Points : 41
    Points
    41
    Par défaut
    Merci l'ami, oui effectivement ByteSwap, je vais le tester en parallèle.

    Citation Envoyé par Cirec Voir le message
    Bonjour,

    je suis pas certain de mon coup
    mais sur les testes que j'ai fait avec l'API Winsock "ntohs"
    ça ressemble à un byte swap
    peut être que ceci fera l'affaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function Swap16(x: UInt16): UInt16;
    begin
      Result := ((x and $ff) shl 8) or ((x and $ff00) shr 8);
    end;
    Cordialement,

    @+

  4. #4
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    la fonction Swap existe depuis Turbo Pascal

    attention, elle fait un swap 16bits inconditionnel, quelque soit la plateforme et sans tenir compte du boutisme.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Convertir les valeurs d'un jTable
    Par nounou nu dans le forum Composants
    Réponses: 6
    Dernier message: 06/05/2015, 22h44
  2. Réponses: 1
    Dernier message: 11/09/2013, 10h44
  3. Convertir en ASCII chaque bit d'un Byte ?
    Par lcoulon dans le forum Débuter
    Réponses: 1
    Dernier message: 05/11/2011, 18h11
  4. récupérer les bits d'un byte
    Par ToTo13 dans le forum Langage
    Réponses: 3
    Dernier message: 10/12/2006, 16h25
  5. opérations sur les bits d'un byte
    Par petitours dans le forum C++Builder
    Réponses: 4
    Dernier message: 10/02/2004, 20h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo