Ho fatto varie ricerche e letto anche la sezione del mio libro
Ma non riesco a capirne utilizzo e modalità...
ad esempioCosa significa?codice:3 << 2
A cosa servono?
Ho fatto varie ricerche e letto anche la sezione del mio libro
Ma non riesco a capirne utilizzo e modalità...
ad esempioCosa significa?codice:3 << 2
A cosa servono?
"Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)
"Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)
http://xvincentx.netsons.org/programBlog
Se tu avessi nozioni di assembler, sapresti che quell'operatore corrisponde ad una operazione di shift (a sinistra in quel caso) e che equivale ad una operazione di moltiplicazione per 2.
Lo shift e' usato nella gestione delle maschere di bit (usatissime nel software di rete, ad esempio) ...
Ecco un esempio di traformazione in binario ..
codice:int v = 0x12345678; int bit; for(bit=31; bit>=0; bit--) printf("%d ", v & (1<<bit) ? 1 : 0); printf("\n");
anche sul mio libro vi era un esempio simile, ma non capisco la loro applicazione...
e cosa significa << e >>
"Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)
"Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)
http://xvincentx.netsons.org/programBlog
un esempio:
http://forum.html.it/forum/showthrea...readid=1061076
lo shift è in assoluto il modo più efficiente per eseguire moltiplicazioni o divisioni per potenxe di 2, ma è solo un esempio banale....
immagina di avere un campo dati in cui il terzo bit ha un particolare significato... se vuoi settarlo o resettarlo indipendentemente dagli altri non puoi che usare gli operatori bit a bit (& e |)... idem se vuoi testare se un singolo bit è on o off.
etc...
Leggi il REGOLAMENTO!
E' molto complicato, un mucchio di input e output, una quantità di informazioni, un mucchio di elementi da considerare, ho una quantità di elementi da tener presente...
Drugo
se ti interessa capire a cosa possono servire devi ragionare in binario ...
Experience is what you get when you don’t get what you want
Se hai un valore in binario di questo tipoOriginariamente inviato da XWolverineX
anche sul mio libro vi era un esempio simile, ma non capisco la loro applicazione...
e cosa significa << e >>
01101001
e fai un'operazione del tipo
>> 1
ottieni
00110100
come risultato (come vedrai tutti i bit sono "scivolati" a destra di una posizione).
Analogamente per << per "scivolare" a sinistra ...
Ah ecco.
ho visto anche gli altri operatori (utilissimo il ~)
vorrei vedere qualche applicazione pratica.
Avete un esempio?
"Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)
"Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)
http://xvincentx.netsons.org/programBlog