Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Packed BCD

  1. #1

    Packed BCD

    Salve a tutti
    ho la necessità di trasformare una variabile byte su 8 bit codificati in Packed BCD in un intero, o comunque in un valore numerico. Qualcuno conosce qualche libreria che fa al caso mio, o devo provvedere a mano?
    grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    questo e
    questo ti tornano utili?

    Occhio che richieste di questo tipo le risolvi usando google (io ho usato le parole chiave java from byte to BCD )

  3. #3
    Avevo già trovato con google le soluzioni indicate, solo che non vanno bene in quanto in entrambi i casi i metodi sono per valori unsigned. Inoltre il primo link è per codici BCD e non Packed BCD e poi non mi convince tanto!
    Non avrei mai messo un post sul forum senza aver prima cercato su google.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Se in java cerchi qualcosa che lavori direttamente su unsigned caschi male perché il tipo "unsigned" in java non esiste. Nei casi in cui hai la necessità di usare tipi unsigned devi provvedere al passaggio manualmante.

    Dalla tua richiesta non si evince che già hai cercato, molti fanno al contrario: prima postano e poi cercano, scusami.
    Ti posso dire prova ad usare qualcosa, se hai un analogo in codice nativo (o cmq in un linguaggio in cui hai l'unsigned) prova a dumpare l'input e l'output e vedi che succede

  5. #5
    Ciao grazie per la risp
    cmq il dato io lo prendo da un plc attraverso dde. In ogni caso la codifica è nota. Potrei fare una funzione per la conversione. Speravo solo ci fosse una bella funzioncina già bella e pronta. Mi sa che provvederò a mano.
    Grazie ancora

  6. #6
    ho fatto la funzione a mano
    adesso il problema (in verità non è un problema) è che mi tronca sempre due bit quando converto 1byte in stringa. Mi prende sempre 6 bit troncando i due bit + significativi. Immagino lo faccia perché sono due 0 (e lo saranno sempre perché da standard), quindi non pesano sulla conversione. E' possibile invece fare in modo che mantenga tutti gli 8 bit? La conversione la faccio così:

    byte[] bytes = new byte[]{b[i]};
    BigInteger bi = new BigInteger(bytes);
    String s=bi.toString(2);

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    dovrebbe, non sono sicura.
    Se ti interessano valori di 8 byte usa il padding, in modo da mettere i 2 bit più significativi a zero e lavorare su elementi con dim standard

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.