Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 12 su 12
  1. #11
    Premetto che non ti aiuterò scrivendo del codice, ma ti darò solo un consiglio:
    Se dividi un numero binario in gruppetti da quattro cifre, ottieni una rapresentazione del numero esadecimale.
    Se questa suddivisione, ad esempio, la fai sotto forma di stringa, puoi sostituire facilmente i quartetti di cifre con numeri esadecimali.
    La trasformazione è questa:
    codice:
    0000  0
    0001 1
    0010 2
    0011 3
    0100 4
    0101 5
    0110 6
    0111 7
    1000 8
    1001 9
    1010 A
    1011 B
    1100 C
    1101 D
    1110 E
    1111 F
    Una volta suddiviso in grupetti di 4 cifre, la conversione è semplicissima. Nella stringa sostituisci gli 0000 con gli 0 e gli 1111 con le F... E così via.
    Il passaggio è semplice, anche se un codice così strutturato non è proprio dei più veloci.
    Però è un'idea e una possibilità!
    Ciao!
    "Meglio un aiuto che 50 consigli"
    (tratto dalle barrette Elah)

  2. #12
    Secondo suggerimento:
    Puoi usare il codice che ti ha scritto AndreaNET se converti da binario a decimale.
    Perciò:
    per convertire binario in decimale, devi sommare il numero 2 elevato alla posizione della cifra nel numero binario moltiplicato per il valore di quella cifra.
    Insoma, se hai il numero
    10101011
    puoi risolvere così:
    (partendo dalla prima cifra a destra)
    codice:
    1*2^0+1*2^1+0*2^2+1*2^3+0*2^4+1*2^5+0*2^6+1*2^7
    Che risulterà:
    codice:
    1+2+0+8+0+32+0+128=171
    Non so se mi sono spiegato, ma l'esempio mi sembra abbastanza comprensibile. Trasformando, come prima, il numero in stringa, l'operazione è comunque semplice, ma forse troppo lenta.

    Purtroppo non conosco bene il C e non posso aiutarvi con il codice.
    Ma penso che conoscendo il meccanismo di conversione, con facilità riuscirete a costruire il vostro codice (nei [pochi] linguaggi che conosco saprei farlo, e forse con un po' di impegno anche in C, ma ci emtterei parecchio).
    Ciao! :metallica
    "Meglio un aiuto che 50 consigli"
    (tratto dalle barrette Elah)

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 © 2026 vBulletin Solutions, Inc. All rights reserved.