Transformer une chaine hexadecimal complément à 2n en décimal

Bonjour à tous,
Voilà, tout est dans le titre.
Je désire transformer une chaine hexadecimal complément à 2n en Décimale.
Exemple : en utilisant la fonction chaine hex en decimal : "FFFA" donne "65530" mais si on transforme avec complement à 2n je devrais obtenir ( -6).
Je n'ai pas trouvé de fonction qui permette de le faire. SI vous avez une solution je suis preneur!!!!
En cherchant sur les forums, j'ai trouvé un petit Vi qui permet de transformer un nombre binaire (I16) en decimale avec complement à 2n qui fonctionne.
Le soucis c'est que dans mon VI je recupère une valeur hexadecimale type Chaine et je n'arrive pas à transformer : "1111111111111010" au format chaine en "1111111111111010" format I16 pour pouvoir connecter ce petit VI. (png ci_joint)
Je ne sais pas si j'a été suffisament préscis mais je vous remercie d'avance pour toute l'aide que vous pouvez m'apporter cellà fait un petit bout de temps que je tourne en rond sans trouver de solution.
Résolu !
Accéder à la solution.
Pièces jointes :
Conversion 16bit Binaire en decimale complément à 2n.png ‏20 KB

de rien 
c'est un grand classique de "binary string to number".
Cette fonction n'existe pas dans la palette "String / number-string conversion"
Elle a (je pense) été proposée sur labview idea exchange.
Peut-être une fonction dédiée (native) serait-elle "plus rapide" (??)
Dans le cas contraire ... je n'en vois pas trop l'utilité.
Ce "scan from string / %b " fait parfaitement ce travail.
bon code.

Similar Messages

  • Ajouter une chaine dans une chaine déroulante

    Bonjour,
    Je suis nouveau en labview, et j'aimerai savoir comment on ajoute une chaine dans une chaine déroulante.
    Merci
    Cordialement
    Solved!
    Go to Solution.

    Bonjour Rémi,
    Rien de plus simple, tu fais un clic-droit sur ta chaine déroulante >> Editer les éléments...
    Tant que j'y suis je te conseille d'utiliser une commande de type énum plutôt qu'une chaine déroulante. Les deux commandes ont la même fonctionnalité sur la face-avant. L'avantage est qu'une commande énum est gérée sous forme de numérique sur ton diagramme, c'est donc plus facile à utiliser est moins source d'erreur que d'utiliser des chaines. C'est notamment très pratique avec une structure condition.
    Bonne journée,
    M-Junior

  • Transformer une palette en nuancier

    Pour travailler sur une image en mode  "couleurs indexées" sans modifier la table des couleurs, il faudrait  pouvoir transformer la table des couleurs ou "palette"  en nuancier.
    Comment faire , (à part tranférer les 256 couleurs une à une de la table des couleurs vers le nuancier = fastidieux)
    Plus précisément, lorsqu'on affiche la "table de couleurs" (menu Image >Mode >Table des couleurs)  on ne peut plus travailler avec l'outil pipette, et donc sélectionner une couleur de la table comme couleur de premier plan. L'outil pinceau est également inactif.pour travailler sur l'image il faut fermer la  table des couleurs  et  on se retrouve bien avancé
    La seule chose qu'il soit possible de faire c'est de cliquer sur une couleur de la palette , ce qui  ouvre le menu sélection des couleurs ce qui permet de transférer la couleur dans le nuancier....
    Merci de votre réponse
    (sujet déjà posté sur le forum international)

    Bonjour!
    Pour transformer une palette en nuancier:  lorsque vous convertissez la photo en couleurs indexées:
    menu Image » mode » Table des couleurs… cliquez sur le bouton Enregistrer. vous pouvez enregistrer ce fichier dans vos documents.
    Puis dans la palette nuancier, coin supérieur droit, Charger un nuancier … allez choisir le fichier en question.
    Voilà!
    ;o-)

  • Je dispose d'une suite CC complète, j'ai un Mac et un PC, puis-je installer mes produits avec le même licence sur mes deux machines ?

    Bonjour
    je dispose d'une suite CC complète, j'ai un Mac et un PC, puis-je installer mes produits avec le même licence sur mes deux machines ?
    Merci de votre aide.

    Cloud License allows 2 activations http://www.adobe.com/legal/licenses-terms.html
    -Install on a 2nd computer http://forums.adobe.com/thread/1452292?tstart=0
    -Windows or Mac does not matter... 2 on the same operating system, or 1 on each

  • D'un tableur excel à une chaine déroulante

    Bonjour,
    je cherche à faire afficher par une chaine déroulante (en face avant) une liste de nom contenu dans un fichier excel. Ces nom sont dans la première colonne et sur les 40 premières lignes. Mon début de programme est "lire un fichier tableur".mais après les solutions essayé ne marche pas. Il y a la solution en entrant ces noms dans "propriété de chaine déroulante" mais si ma base de donnée de nom change ....
    En vous remerciant de votre aide
    Cordialement
    4Sup

    bonsoir
    rien a voir avec la question de départ mais il n'est peut etre pas judicieux de stocker l'age
    c'est redondant et peut etre source d'erreur. Puisque tu disposes de la date de naissance
    autant implementer une fonction de calcul de l'age
    Cdt
    Tinnitus
    CLAD / Labview 2011, Win Xp
    Mission d'une semaine- à plusieurs mois laissez moi un MP...
    RP et Midi-pyrénées .Km+++ si possibilité de télétravail
    Kudos always accepted / Les petits clicks jaunes sont toujours appréciés
    Don't forget to valid a good answer / pensez à valider une réponse correcte

  • Comment je peux récupérer une chaine de caratères d'un fichier(txt par expl) dans une ligne (spécifiée) et une colonne (aussi spécifiée) avec notre adorable software LABVIEW

    Salut à tous,
    Comment je peux récupérer une chaine de caratères d'un fichier(txt par expl) dans une ligne (spécifiée) et une colonne (aussi spécifiée) avec notre adorable software LABVIEW.
    Thx
    Nizar
    Résolu !
    Accéder à la solution.

    Si ton fichier est un fichier tableur ce qu'a dit yohann me parait le mieux. Par contre si c'est un fichier texte qui contient une chaine au format tableur (sepération avec des tabulations) il faut utiliser "lire un fichier texte" + "Convertir un chaine au format tableur en tableau" et ensuite indexer la case qui t'intéresse.
    Maintenant si tu as un simple fichier texte  et que tu veux lire un couple ligne/colonne qui désigne un caractère précis il faut utiliser "définir la position dans le fichier" en connaissant la largeur de ton fichier texte. et la tu n'as plus qu'à rentrer dans offset: indice_ligne*largeur+indice_colonne comme une vieille réminiscence du c.
    Sebastien DEVISSCHER - Nerys

  • Recherche dans une chaine (un petit défi ?)

    Recherche dans une chaine du nombre d'occurences d'un caractère unique ou d'une sous-chaine (plusieurs caractères)
    en pièce jointe, un Benchmark reprenant différentes méthodes. (chaine de départ : 50e6 caractères)
    y est repris ma méthode avec un code en assembleur et l'appel du dit code dans une dll.
    Mon code (ASM_DLL) supporte la recherche d'un caractère unique ou d'une sous-chaine.
    sous-chaine : "abc"
    SpreadSheat - 504ms
    Replace - 428ms
    Count (search 1D array) : ne fonctionne pas si plus de un caractère.
    ASM_DLL - 71ms
    caractère unique : "a"
    SpreadSheet - 639ms
    Repalce - 435ms
    Count (search 1D array) - 102ms
    ASM_DLL - 78ms
    L'outil de mesure est fourni, soit le code benchmark ci-joint.
    Vous pouvez donc prendre les temps "suivant" votre machine, et établir les rapports de comparaison.
    Mis à part la méthode pour générer la chaine de 50e6 caractères, le reste du code est "from altenbach"
    En ce qui me concerne:
    ASM_DLL / Replace = 71ms/428ms = 0,16
    objectif : trouver le nb d'occurences de la sous-chaine "abc" dans une chaine de 50e6 caractères
    (la chaine de départ est générée aléatoirement avant le start du Bench)
    Qui peut trouver un code plus rapide que la méthode "Replace" avec un coefficient inférieur à 0,16 ?
    Quelqu'un pour relever le défi ? .. un petit 0,15 ?

    bon ... et bien j'ai joué tout seul
    aucun passionné d'optimisation et/ou d'assembleur su le forum ?
    Je suis descendu à 0,14 (par rapport à la méthode "replace")
    La métode "replace" (code LV) est la plus rapide pour une sous-chaine comportant plusieurs caractères.
    Pour un caractère unique, la métode la plus rapide est "Count" (et "Count_parallel")
    ("Count" fonctionne uniquement pour la recherche d'un caractère unique)
    Ma dll prend les deux, un caractère unique ou une sous-chaine quelconque. (comme "replace" ou "spreadsheet")
    J'ai peaufiné l'algorithme et le code au maximum, un 0,12 ou même un 0,13 me semble impossible. (sans parallelisme)
    Si vous avez de très longues chaines à scanner, servez-vous de cette dll, ça va vite

  • Convertir une chaine de caractère en horodatage

    Bonjour à tous,
    Est-ce possible de convertir une chaine de caractère de ce type: 24/09/2014 en horodatage ?
    Cordialement
    Nathan
    Résolu !
    Accéder à la solution.

  • Comment traduire une page web complète avec Safari?

    Comment traduire une page web complète avec Safari?
    sur PC je traduit avec Google traduction, mais il n'est pas accessible sur le iMac.
    J'aimerai avoir l'équivalent sur Mac : Traduire des pages web entière automatiquement.

    Comment traduire une page web complète avec Safari?
    sur PC je traduit avec Google traduction, mais il n'est pas accessible sur le iMac.
    J'aimerai avoir l'équivalent sur Mac : Traduire des pages web entière automatiquement.

  • Enregistrer une chaine de caractère dans un fichier excel

    Bonjour, 
    Je réalise une programme qui:
    1) récupère les valeurs de courant grâce à un instrument de mesure, et enregistre ces valeurs chaque seconde dans un fichier excel;
    2) reçoit des logs à intervale irrégulier via le port série et les enregistre également dans un second fichier excel.
    La première partie fonctionne très bien mais je me retrouve face un problème pour la seconde: les logs étant des chaines de caractère, je ne trouve pas comment les enregistrer dans un fichier excel. Quelqu'un aurait il une idée? Il est très important que je puisse enregistrer l'heure à laquelle les logs ont été reçus afin de la comparer avec mes valeurs de courant. 
    Pour la premiere partie, j'ai utilisé l'élément "Ecrire dans un fichier de mesures" qui correspond parfaitement à mes besoins.
    Merci par avance pour votre aide ! 
    Résolu !
    Accéder à la solution.

    Bonjour,
    Vous pouvez utiliser le vi "écrire dans un fichier tableur" pour écrire dans un fichier .xls.
    Ou, vous pouvez écrire dans un tableau et exporter votre fichier à la fin de votre programme dans excel.
    En règle général, il est préferable d'écrire dans un tableau et d'exporter le fichier à la fin, que vous utilisez l'exemple 1 ou 2. En effet, cela vous évite d'ouvrir le fichier et de le refermer un grand nombre de fois.
    Cordialement,
    Jovan N. - Application Engineering
    Pièces jointes :
    exemple_ecrire_dans_fichier_exel.zip ‏14 KB

  • Récupérer données d'une chaine de caractères (CVI)

    Bonjour,
    je travaille sur LabWindows CVI.
    J'ai une trame CAN de 16 caractères que j'entre manuellement dans un champ en string.
    Prenons pour exemple :
    unsigned char Trame[17];
    J'entre dans le champ 0123456789ABCDEF.
    Je fais :
    GetTableCellAttribute (panel, control, case en question, ATTR_CTRL_VAL, Trame);
    Je lis bien :
    Trame = "0123456789ABCDEF"
    Seulement voilà quand je souhaite afficher dans un autre champ, la valeur de certains Bytes.
    Donc certaines données de la chaine de caractère.
    Je fais pas exemple :
    SetCtrlAttribute (panel, control, ATTR_CTRL_VAL, &Trame[X]);
    Si X = 0 alors j'obtiens : 0123456789ABCDEF alors que j'attend : 0
    Si X = 1 alors j'obtiens : 123456789ABCDEF alors que j'attend : 1
    Si X = 7 alors j'obtiens : 789ABCDEF alors que j'attend : 7
    Si X = 11 alors j'obtiens: BCDEF alors que j'attend : B
    Comment faire dans Labwindows pour afficher ce que je souhaite.
    Merci de votre aide.

    Bonjour,
    En fait ce n'est pas strcpy qu'il faut utiliser mais strncpy (voir l'aide de CVI pour un exemple) :
    strncpy
    char *strncpy (char targetString[], const char sourceString[], size_t maxChars);
    Purpose
    Copies characters from a source string to a target string until it reaches the specified number of characters or an ASCII NUL byte. If an ASCII NUL byte is found in the source buffer within the specified number of bytes, NUL bytes are written to the target until the specified number of characters have been filled in. If no ASCII NUL byte is found within the specified number of bytes, the function returns after copying the specified number of bytes and does not append an ASCII NUL byte to the buffer. If you want to guarantee that an ASCII NUL byte is at the end of the copied bytes, you can use the following:
    strncpy (target, source, n);
    target[n]=0;
    Cordialement,
    Da Helmut

  • Balayage et conversion d'une chaine "scientifique" en valeurs "décimales"

    Bonjour à tous,
    Je souhaite votre aide pour un petit pb que je n'arrive pas à résoudre.
    Z 7.2295E+05,Y 1.3832E-06,PHASE -89.09,CS 2.2018E-10,CP 2.2012E-10...
    Je souhaiterais balayer la chaine ci-dessus pour en retirer les valeurs"scientifiques" et les convertir en valeur "décimales" pour les mettre dans une par une dans un tableau.
    J'ai essayé quelques vi de convertion mais  mes résultats sont très moyens ! Il me manque toujours un morceau dans le tableau ...
    En fait, la chaine fait une 20 ène de mesures avec 20 valeurs au format scientifique.
    Merci.
    Cordialement

    Bonjour,
    Petite proposition. Je reste dispo si tu as des questions
    Maxime
    Certified LabVIEW Associate Developper
    Pièces jointes :
    ConversionSciDec.vi ‏12 KB

  • Modifier une chaine avant de l'enregistrer.

     Bonjour,
    Je tente d'enregistrer les données reçues d'une commande sous le format ASCII. Mais je souhaiterai pouvoir l'enregistrer en espaçant les bits de données par un espace.
    Mais je ne trouve pas la fonction adéquate pour modifier la chaine que je reçois.
    Pour être plus clair, chaque bits de données correspondent à une fonction. Je souhaiterai pouvoir les séparer, pour ensuite les indexer, et faire le traitement de chaque bits pour récupérer les valeurs qui m'intéressent.
     Est-ce quelqu'un aurait une idée à me souffler ?
     Je vous joinds mon Vi pour contextualiser ma démarche.
     Cordialement,
     Sma
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    Send.vi ‏23 KB

    Salut, je pensais à cela
    Luc Desruelle | Voir mon profil | LabVIEW Code & blog
    Co-auteur livre LabVIEW : Programmation et applications
    CLA : Certified LabVIEW Architect / Certifié Architecte LabVIEW
    CLD : Certified LabVIEW Developer / Certifié Développeur LabVIEW
    Pièces jointes :
    LV8.61_exemple.zip ‏7 KB

  • Transformer une video en fichiers images

    Bonjour,
    Je vous explique ma problématique :
    Actuellement je lis plusieurs fichiers images successivement et après un traitement de l'image je trouve les coordonnées du centre d'un objet. j'ai actuellement 15 fichiers image et me retrouve ensuite avec un tableau m'indiquant les 15 coordonnées x/y du centre de mon objet.
    J'aimerais maintenant faire la même chose mais à partir d'une vidéo.(avi), par conséquent je dois transformer ma video en plusieurs images.
    Par conséquent est-il possible de découper une vidéo image par image (ou plutôt tout les x seconde, car je crois que le format avi est un "encapsulage") et de stocker chaque image dans un répertoire avec a chaque fois un nom différent ? Je précise que ce découpage doit etre assez rapide : toutes les 20ms. (d'ailleurs y a t-il une limite ?)
    Est-il plus simple de brancher directement une caméra sur le port usb et de prendre en direct la vidéo (ou les images toutes les 20ms) ?
    Si une de ces solutions est envisageable, pourriez vous me guider un peu quant à sa réalisation ?
    Merci par avance pour vos réponses.

    Je me permets de reposter sur ce sujet car...
    je recois une video dans un répertoire en .avi que je transforme en une succesion d'image que je lis avec un vi utilisant le module vision.
    Pas de problème, cela marche relativement bien.
    MAIS, on vient de m'annoncer que cette video sera sans doute au format mp4, du coup il me semble que mon vi ne focntionne plus car le module vision ne lis pas les mp4.
    J'ai cherché un peu, il semble que l'on peu utiliser VLC et des active'X pour lire une vidéo mp4, mais pourra t-on alors décomposer cette vidéo en images ?
    Je pourrais aussi convertir la video .mp4 et .avi mais il faut que ce traitement se fasse automatiquement, et je suis pas sur que ce soit plus simple...
    Qu'en pensez vous ? avez vous des pistes de travail ? 

  • Rechercher une chaine et la remplacer

    Bonjour à tous,
    Je souhaiterais faire une recherche de chaine commençant par le signe - et récupérer la suite de la chaine . Ensuite la remplacer par une autre chaine de mon choix
    Exemple de chaine à scanner : ( je pars d'un tableau de nombres que je tranforme en chaine pour faire la recherche )
    -45.23
    0
    -23.5
    -1
    -12
    6
    etc
    Par exemple, remplacer -12 par 0
    J'ai utlisé le vi "rechercher et remplacer"  mais il me remplace que le" - " par et laisse "12" . Résultat : 012 au lieu de 0. Normal.  Il ne prend pas la suite de la chaine. J'espère avoir été clair....
    Si vous avez des idée :-)
    Merci
    Cordialement.
    Résolu !
    Accéder à la solution.

    Je t'envoie la partie du code simplifié.
    Dans le tableau il y a 2 valeurs : -1 et -12
    je souhaiterais remplacer ces 2 valeurs( négatives ) par 0 et les remettre dans un tableau avec le restant des valeurs.
    Je n'arrive pas prendre en compte le restant de chaine apès le signe - ... j'ai essayé un tas de trucs mais j'ai du zapper le bon !
    Voilà mon souci  :-)
    Pièces jointes :
    ChangerValeurTableau01.vi ‏12 KB

Maybe you are looking for

  • AT&T DSL & Cisco ASA 5505 Problems

    Okay I have been working with a 5505 for two days and finally got it configured and working on an AT&T DSL Modem then when I took the 5505 to the clients office and connected/configured it to their AT&T DSL with their IPs the whole thing quite workin

  • Remove password in pdf

    I just downloaded Adobe and 'Forms Central' for the purpose of removing an existing password in a pdf file. The prg won't import it because it is password protected. What should I do differenly? Thanks in adance for replies! DEB

  • How to save video codec H.264 on FMS

    Hi, I'm publishing live video on FMS , I want to save the video on the server ,what should I do ? the video was codecd in H.264 please help me ,thank you very much!!!

  • How can I get PP CS4 to automatically locate missing assets?

    Hello.  I'm using CS4 on a Hewlett-Packard PC computer running a 64-bit Windows 7 operating system. My computer recently crashed necessitating a visit to my friendly, local repair shop.  When I got it back, I had to reload PP which I did but when I t

  • When will new version of BI Beans be available?

    We'd very much like to have Query Builder and Calculation Builder functionality in the thin-client implentation of BI presentations. From other posts in this forum I've learned that the next version of BI Beans will have both of these. However, these