Accueil > Forum > > > > Conversion real binaire
Conversion real binaire
jeudi 12 mai 2005 à 09:33:26 |
Conversion real binaire

difficile
|
Bonjour, J'utilise Delphi 7 pour communiquer avec un automate Télémécanique et je rencontre un probléme pour convertir un nombre flotant (32 bits) en binaire. Je communique avec un socket TCPIP et pour construire la trame il me faut des octets. exemple: Edit1.text = 253.7521 à transferer dans une variable automate (real 32 bits) donc il faut construire les 4 bytes. Merci
|
|
jeudi 12 mai 2005 à 17:40:51 |
Re : Conversion real binaire

Kenavo
|
Sauf erreur, Télémécanique utilise le codage IEEE 32 bits, c'est à dire le type Single
On doit pouvoir écrire :
type
TTab4Byte = Array[0..3] of Byte;
PTab4Byte = ^TTab4Byte;
var
Ptr : PTab4Byte;
IEEE32 : Single;
begin
IEEE32 := Pi;
Ptr := Pointer(@IEEE32); // et les 4 octets sont : Ptr^[0], Ptr^[1], Ptr^[2] et Ptr^[3]
end;
A vérifier : l'ordre des octets dans l'automate, mais ça doit être le même que dans un PC
Ken@vo
Code, Code, Codec !
|
|
jeudi 12 mai 2005 à 21:54:02 |
Re : Conversion real binaire

WhiteHippo
|
Tout à fait Kenavo.
Pour être précis : "Le format flottant utilisé est celui de la norme IEEE STD 734-1985 (équivalence IEC559). La longueur des mots est de 32 bits, ce qui correspond à des nombres flottants simple précision."
Par contre c'est direct :
var IEEE32 : Single;
begin IEEE32 := FloatToStr(Edit1.text) ; // IEEE32 contient le nombre au format réel, tu le transmets tel quel. // La valeur récupérée pourra être directement utilisée dans un %MF end;
Cordialement.
|
|
vendredi 13 mai 2005 à 17:31:36 |
Re : Conversion real binaire

Kenavo
|
Et à la question que tu te poses maintenant :
Oui, tu peux faire l'opération inverse à partir d'un paquet d'octets reçu :
Type TTab4Byte = Array[0..3] of Byte; PTab4Byte = ^TTab4Byte; var Ptr : PTab4Byte; IEEE32 : Single; begin Ptr := Pointer(@IEEE32); // et les 4 octets sont : Ptr^[0], Ptr^[1], Ptr^[2] et Ptr^[3]
Ptr^[0]:=OctetsRecus[i];
Ptr^[1]:=OctetsRecus[i+1];
Ptr^[2]:=OctetsRecus[i+2];
Ptr^[3]:=OctetsRecus[i+3];
end;
On peut aussi créer un pointeur sur Single,
var
PileReception : array[0..99] of byte; // la pile de reception de données
........
var
IEEE32 : Single;
ps : ^Single;
begin
Ps := Pointer(@pile[i]); // i est l'index du premier octet du réel
IEEE32:=Ps^;
end;
Ken@vo
Code, Code, Codec !
|
|
Cette discussion est classée dans : binaire, conversion, real, automate, bits
Répondre à ce message
Sujets en rapport avec ce message
conversion real en string [ par frouxguillaume ]
Bonjour, je voudrais savoir si il existe une fonction permettant la conversion d'un nombre de type real en chaine de caractere (string).Petite precisi
Conversion binaire décimal [ par Laudrup ]
Bonjour à tous,je voulé savoir comment vous feriez pour faire un programe qui convertit un nombre binaire en un otr décimal pui pour afficher le décim
conversion binaire en caractère [ par codepvc ]
Bonjour,voulez vous m'aider pour convertir un texte en binaire à un texte en caractère, c'est-à-dire prendre chaque 8bits et le convertir utilisant le
conversion monétaire multi devises [ par neige21 ]
Bonjour à tous je suis une debutante en Delphi je cherche un algorithme pour faire la conversion monétaire multi devises, j'ai beau essayé d'en faire
AlphaBlend , TransparentColor & Co [ par Nicolas___ ]
Bonjour , encore moi ;) Voila, j'ai encore un problème : Cirec m'a fait Découvert il y a quelque temps TransparentBlt (http://www.delphifr.com/forum/s
[Info]Compilo Delphi -> pour 2010 [ par rt15 ]
Bonjour,Juste pour ceux qui seraient pas encore au courant et que ça pourrait intéresser... La traduction d'une annonce de heu... Emabarcadero on va d
programation avec pic 16F877 [ par ta7foun2009 ]
Bonjour, je voudrais bien savoir comment réaliser un chronomètre allant de 0 à 2min59 avec un PIC 16F877avec :-les 6 bits de poids faible indiquant l
Conversion colonne excel en caractère [ par TheSotr ]
Bonjour,Je suis un réel débutant en Delphi (depuis hier en fait ^^) mais ai des bonnes bases de programmation en Visual Basic, C, Java (un peu), MatLa
Conversion de caractére á ASCII avec 2 edit box (champs de texte) [ par Dancsi27 ]
Bonjours tout le monde,J'ai une petite exercice á faire pour l'école oú j'ai une fiche avec un button Quitter et 2 edit box (champs de texte)Le button
Convertir l'identifiant d'un composant en Real [ par Matware456 ]
Bonjour, Voilà je suis inscrit depuis pas mal de temps mais c'est mon premier message ici. Je suis débutant en Delphi et j'ai un petit problème :J'uti
Livres en rapport
|
Derniers Blogs
ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2ZUNE : NOUVELLE VERSION DU ZUNE SOFTWARE - V 4.2 par ROMELARD Fabrice
Avec la dernière génération du lecteur MP3 de Microsoft, le ZUNE HD, Microsoft a publié une nouvelle version du logiciel pour PC. Ainsi, je me suis décidé à installer celle-ci sur mon Tablet PC ACER, comme toujours le logiciel est donc tél...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice L'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIESL'INTERFACE NATURELLE DE WINDOWS PHONE 7 SERIES par odewit
La tendance est aux interfaces naturelles (NUI), et le keynote de Bill Buxton au MIX l'a bien souligné.
La charte graphique et ergonomique de Windows Phone 7 a donc été entièrement repensée en vue d'obtenir un maximum d'efficacité sur ce point. En re...
Cliquez pour lire la suite de l'article par odewit COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE?COMMENT MAPPER UNE VUE SQL SUR UNE COLLECTION DE COMPLEX TYPE? par Matthieu MEZIL
Avec EF, les vues doivent être mappées sur des entity types. Le problème c'est que les entity types doivent avoir une clé. Avec EF, nous avons les complex type qui n'ont pas de clé mais les vues ne peuvent pas être mappées dessus. Avec EF4, il est possibl...
Cliquez pour lire la suite de l'article par Matthieu MEZIL
Forum
RE : DELPHIRE : DELPHI par overtaker
Cliquez pour lire la suite par overtaker RE : DELPHIRE : DELPHI par rt15
Cliquez pour lire la suite par rt15 DELPHIDELPHI par overtaker
Cliquez pour lire la suite par overtaker
Logiciels
Academy System (10.9.4.0)ACADEMY SYSTEM (10.9.4.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods
|