Oppure

Loading
02/09/10 11:58
Pitagora
Sto studiando da poi gli operatori bitwise ma se devo dirla tutta non li trovo molto utili. A cosa servono?
aaa
02/09/10 13:57
nihal
Beh, un esempio potrebbe essere la cifratura XOR, che viene fatta "xorando" bitwise tutti i bit del dato da codificare con la chiave scelta, oppure quando si usano le mask in OpenGL... Le applicazioni sono virtualmente infinite...
aaa
02/09/10 14:47
pierotofy
TheKaneB ha scritto un buon articolo che dovrebbe rispondere alla tua domanda: oscene.net/it/programmazione/c/…

Il perchè usare operazioni bitwise invece di usare altri metodi è un fatto puramente di performance; molto spesso utilizzare le operazioni bitwise sono più veloci delle loro equivalenti non-bitwise.
Ultima modifica effettuata da pierotofy 02/09/10 14:49
Il mio blog: piero.dev
02/09/10 17:24
Bonny
Postato originariamente da pierotofy:

TheKaneB ha scritto un buon articolo che dovrebbe rispondere alla tua domanda: oscene.net/it/programmazione/c/…


Ottimo articolo :k:
aaa
04/09/10 14:26
Pitagora
Studiando questi operatori sul libro e su alcune guide sul web sono arrivato ad una conclusione. Corregetemi se sbaglio:
~ = converte tutti gli 0 in 1 e tutti 1 in 0
<< = aggiunge n 0 da destra
>> = aggiunge n 0 da sinistra
purtroppo non ho capito quest'ultimi: | & ^ me li spiegate. Grazie :k:
aaa
04/09/10 16:18
nihal
Gli operatori | ^ & corrispondono rispettivamente agli OR, XOR e AND della logica. In particolare:
-OR restituisce 1 se almeno uno degli operandi è 1, altrimenti 0;
-XOR restituisce 1 se solo uno degli operandi è 1 (scusa il gioco di parole :) ), altrimenti 0;
-AND restituisce 1 solo se entrambi gli operandi sono 1, altrimenti 0;
In ambito bitwise, gli operandi sono i singoli bit... Se hai domande posta, spero di essere stato chiaro :)
Ultima modifica effettuata da nihal 04/09/10 16:19
aaa
04/09/10 16:36
Pitagora
il concetto sta diventando sempre più chiaro. potresti concludere facendo degli esempi? le cose che ho detto prima riguardo a ^ >> <<
aaa
05/09/10 12:58
nihal
Guarda, esempi sugli shift e sull'AND li trovi sull'articolo di TheKaneB che ti è stato segnalato qualche reply fa, mentre sul not non penso ci vogliano spiegazioni, no?
Invece per XOR (non uso tutti i 32 bit, ma i semplici numeri in binario):
101000 XOR
001011 =
___________
100011
aaa