PDA

Visualizza la versione completa : [OT] Operatori a livello bit


XWolverineX
06-03-2006, 18:54
Ho piu' volte letto materiale sugli operatori a livello bit, ma non sono riuscito a capire a cosa servano...

murder eyes
06-03-2006, 19:43
Che linguaggio?

unomichisiada
07-03-2006, 00:13
Originariamente inviato da XWolverineX
Ho piu' volte letto materiale sugli operatori a livello bit, ma non sono riuscito a capire a cosa servano...
Leggiti il regolamento perchŔ come ti hanno giÓ ftto notare hai omesso informazioni importanti nel tuo post.
Se parli di C,ti posso dire che in genere si usano per acecdere ai singoli bit di un byte di memoria mediante maschere di bit.. Ti faccio un esempio:

supponi di avere un byte fatto cosý:

01010010 (Ŕ un esempio)

In cui per motivi particolari hai la necessitÓ di conoscere il valore del 5░ bit da destra (ad esempio), come fai?
Semplice, prendi un altro byte con tutti zeri dappertutto tranne un uno in corrispondenza del bit che vuoi testare (maschera di bit) e lo metti in and bit a bit con il tuo byte sopra. Il risultato sarÓ zero se il bit da testare Ŕ a uno e diverso da zero altrimenti. Questo perchŔ l'operatore and bit a bit, come dice il nome, farÓ l'and di ogni bit del tuo byte con il corrisponedente della maschera, e il risultato Ŕ quello che ognuno si aspetta, uno se sono entrambi a uno, zero in caso contrario (questo per ogni bit).Chiaro? Ciao

king64
07-03-2006, 14:15
A livello di bit sono importanti anche gli operatori di shift a destra e a sinistra , usate per svariate operazioni , tra cui quelle di moltiplicazione e divisione per 2 .
Es.


00001010 = 10
ShiftLeft(00001010) = 00010100 = 20
ShiftRight(00001010) = 00000101 = 5

:ciauz:

XWolverineX
09-03-2006, 19:56
Scusate Ŕ C++...
non capisco perchŔ abbia scritto OT

unomichisiada
09-03-2006, 23:35
Originariamente inviato da XWolverineX
Scusate Ŕ C++...
non capisco perchŔ abbia scritto OT
OT non va bene anche secondo me, ma neanche C++, gli operatori bit a bit ci sono alche in altri linguaggi. Io ci avrei messo un nel titolo

Loading