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

Langage Pascal Discussion :

Problème de syntaxe fonction SwapBuffer16


Sujet :

Langage Pascal

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2008
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Septembre 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Problème de syntaxe fonction SwapBuffer16
    Bonjour à toutes et à tous.

    Je suis nouvelle ici car automaticienne de profession, je sors cette fois-ci de mes automates traditionnels pour développer une application sur un PC d'automatismes.
    Le langage utilisé est une base de Pascal (Visual IO et Visual PLC de chez Arsoft) et j'ai pas mal de difficultés pour en saisir toutes les nuances

    Mon 1er problème consiste à inverser l'octet de poids fort avec celui de poids faible dans un mot mais j'ai un soucis avec le paramètrage de la fonction SwapBuffer16 (selon l'aide en ligne très pauvre à laquelle j'ai accès, c'est cette fonction qui me parait la plus appropriée ...)

    Cette aide me donne l'exemple suivant : SwapBuffer16 (Var Buffer ; Nb : Integer);

    Qui pourrait me dire la syntaxe exact d'un exemple où je pourrais échanger les octets forts et faible de la variable "toto" vers la variable "titi" ? (toto et titi étant des "word")

    Merci d'avance

  2. #2
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Jie,

    en Turbo Pascal, on peut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    titi := (toto shr 8) or (toto shl 8);
    il faut voir si ton compilateur dispose de ces opérateurs, ou leur équivalent, sinon on peut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tutu := ( 256 * (toto and $00ff) ) or ( (toto and $ff00) div 256);

    --------- ici, édité


    expression d'ailleurs inutilement compliquée, puisqu'on peut faire, à condition que le programme ne génère pas d'erreur sur les overflow

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    tutu := (toto *  256) or (toto div 256);
    Si les cons volaient, il ferait nuit à midi.

Discussions similaires

  1. [Résolu][AC-2010] Problème de syntaxe fonction dlookup
    Par Lestou dans le forum VBA Access
    Réponses: 3
    Dernier message: 18/07/2014, 15h58
  2. Réponses: 2
    Dernier message: 11/04/2008, 22h58
  3. [MySQL] Problème de syntaxe avec variable utilisée dans fonction PHP et MySQL
    Par redvivi dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 19/03/2008, 21h07
  4. Réponses: 2
    Dernier message: 03/10/2007, 22h29
  5. problème de syntaxe pour une fonction
    Par gero123 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 27/07/2007, 12h11

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