Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    48

    Rappresentazione binaria di un numero float

    Ciao a tutti, qualcuno potrebbe spiegarmi brevemente cosa fa questo ciclo for??

    codice:
        for(i=SIZE-1; i>=0; i--)
        {
            bit[i] = (valore & 1);
            valore >>= 1;
        }
    Il "valore" equivale ad un qualsiasi numero float, rappresentato tramite una union in intero. SIZE equivale a 32,il numero di bit su cui si vuole rappresentare il numero.
    Gli operatori & e >> so cosa sono e anke a che servono, ma non capisco l'utilità in questa fase che sembra essere la piu importante di tutta la funzione.

    GRAZIE!

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    48
    Eseguendo le operazioni su un foglietto ho notato che è una sorta di copiatura dei singoli bit all'interno dell'array bit[]...
    Sparo cazzate???

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    L'operazioni di AND & serve ad isolare il primo bit (il bit 0) che viene copiato nel vettore.

    Lo scorrimento a destra di un bit (>> 1) provvede a portare nel bit 0 il bit che stava a sinistra, così da scorrere tutti i bit a destra.

    In pratica, dato che il ciclo comincia da SIZE-1, avrai il bit 0 nell'elemento con indice maggiore e il bit 31 nell'elemento 0 del vettore.
    Ultima modifica di oregon; 08-02-2015 a 12:17
    No MP tecnici (non rispondo nemmeno!), usa il forum.

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.