Discussions au sujet des autres produits NI

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

hexadécimal négatif en décimal négatif

Bonjour à tous !!!

La conversion d'un décimal négatif (-1) en hexa ne pose pas de problème avec LabVIEW mais par contre, je n'arrive pas du tout à faire l'inverse. Comment dois je m'y prendre ?

Pour exemple :
Avec LabVIEW, -1 converti en hexa me donne FFFFFFFF. Mais une fois reconverti en décimal, cela donne 4294967295. ça doit sembler logique pour certains mais pour moi, c'est plutôt mystérieux !
0 Compliments
Message 1 sur 10
8 483 Visites
Hello,
Il suffit de typer le type de conversion utilisé par la fonction Chaîne hexadécimale en nombre.
Via le 3° connecteur d'entrée, en y cablant une constante de type signée.
Cordialement,
Pierre R...

Certified LabVIEW Developer
Message 2 sur 10
8 478 Visites
Bonjour,

Alors un décimal négatif en hexa...je connaissais pas !

Toujours est il que par défaut la fonction "Chaîne hexadécimal en nombre" utilise un U32 comme "model" * - Câble un I32 et le tour est joué !

* Entrée "Valeur par défaut"

Cordialement,
Christophe
Message 3 sur 10
8 477 Visites
LoL, quelle synchronisation dans les réponses !!


Message Edité par pierreR le 07-28-2008 07:36 AM
Pierre R...

Certified LabVIEW Developer
0 Compliments
Message 4 sur 10
8 474 Visites

Bonjour,

Votre problème vient seulement de la représentation de votre nombre lorsque vous le convertissez à l'aide du VI "Chaîne hexadécimal en nombre", celui-ci considère que la chaîne en entrée représente un nombre de type "Unsigned Integer", du coup elle vous renvoye le nombre converti en "Unsigned Integer", ce qui est juste. Pour régler cela il suffit simplement de câbler l'entrée : Valeur par défaut avec une constante de type "Integer" ou "Double" afin que votre conversion se fasse sur un nombre signé. Pour cela, placer une constante numérique, clique droit : Représentation > Double ou Integer.

Cordialement,



Message Edité par Maxime MULLER le 07-28-2008 07:38 AM
0 Compliments
Message 5 sur 10
8 469 Visites
Et de 3 ! Smiley heureux

La prochaine fois on se répartit les questions !
0 Compliments
Message 6 sur 10
8 461 Visites
Arf, vous avez été plus rapide que moi...Mais moi j'ai un screenshot ^^
0 Compliments
Message 7 sur 10
8 459 Visites
Oui mais nous on a un métier :p, Hein Maxime 🙂
On a pas le temps de faire des screenshots...


Pierre R...

Certified LabVIEW Developer
Message 8 sur 10
8 451 Visites
Eh ben !!! Mon problème est tellement basic que vous vous êtes déchainés ! Merci à tous, je vais faire le test immédiatement.
0 Compliments
Message 9 sur 10
8 443 Visites

Bonjour,

 

J'ai un problème similaire à celui évoqué précédemment. 

En effet, je souhaite convertir une chaine hexadécimale en nombre décimal signé (j'ai des valeurs parfois positives et parfois négatives).

J'ai d'abord utilisé Excel pour connaitre les résultats à obtenir à l'aide de la fonction HEXDEC

 

Par exemple : FFFFFF088F = -0,015102625

                       FFFFC00000 = -1

                               547AE1 = 1,32

...

 

J'ai réalisé un premier VI (à l'aide des différentes réponses) mais cela ne fonctionne pas pour toutes mes valeurs

 

Avez-vous des idées ?

0 Compliments
Message 10 sur 10
2 701 Visites