Appunti per Scuola e Università
humanisticheUmanistiche
Appunti e tesine di tutte le materie per gli studenti delle scuole medie riguardanti le materie umanistiche: dall'italiano alla storia riguardanti le materie umanistiche: dall'italiano alla storia 
sceintificheScientifiche
Appunti, analisi, compresione per le scuole medie suddivisi per materie scientifiche, per ognuna troverai appunti, dispense, esercitazioni, tesi e riassunti in download.
tecnicheTecniche
Gli appunti, le tesine e riassunti di tecnica amministrativa, ingegneria tecnico, costruzione. Tutti gli appunti di AppuntiMania.com gratis!
Appunti
informatica
CComputerDatabaseInternetJava
Linux unixReti


AppuntiMania.com » Informatica » Appunti di c » Operatori logici su bit

Operatori logici su bit




Visite: 1464Gradito:apreciate 5-stela [ Picolo appunti ]
Leggi anche appunti:

Cast e conversioni di tipo


Cast e conversioni di tipo In una espressione è sempre possibile avere operandi

Allocazione dinamica della memoria


Allocazione dinamica della memoria Quando è dichiarata una variabile, il compilatore

L'accessibilitÀ e la durata delle variabili


L'accessibilità e la durata delle variabili In C le variabili possono essere
immagine di categoria

Scarica gratis Operatori logici su bit

Operatori logici su bit

Gli operatori logici su bit consentono di porre in relazione due valori mediante un confronto effettuato bit per bit. Consideriamo l'operatore di prodotto logico, o and su bit. Quando due bit sono posti in AND, il risultato è un bit nullo a meno che entrambi i bit valgano  . La tabella illustra tutti i casi possibili nel prodotto logico di due bit, a seconda dei valori che cisacuno di essi può assumere. L'operazione consistente nel porre in AND due valori è spesso indicata col nome di 'mascheratura', in quanto essa ha l'effetto di nascondere in modo selettivo alcuni bit: in particolare viene convenzionalmente chiamato 'maschera' il secondo valore. Se nella maschera è presente uno zero, nel risultato c'è sempre uno zero in quella stessa posizione, mentre un 1 nella maschera lascia inalterato il valore del bit originario. Supponiamo, ad esempio, di voler considerare solo gli 8 bit meno significativi di un valore a 16 bit:

unsigned word;

char byte;


word = 2350;

byte = word & 0xFF;

Il valore  , espresso in 16 bit, risulta  , mentre FFh . L'operazione di prodotto logico è rappresentabile come

0000100100101110 &



ed il risultato è  . Dall'esempio si trae inoltre che il simbolo dell'operatore di and su bit è il carattere '&': il contesto in cui viene utilizzato consente facilmente di distinguerlo a prima vista dall'operatore address of, che utilizza il medesimo simbolo pur avendo significato completamente diverso (pag. 

Più sottile appare la differenza dall'operatore di and logico, sebbene questo abbia grafia differente ('&&', pag.  ). L'and su bit agisce proprio sui singoli bit delle due espressioni, mentre l'and logico collega i valori logici delle medesime (vero o falso). Ad esempio, l'espressione

((a > b) && c)

restituisce un valore diverso da  se a è maggiore di b e, contemporaneamente, c è diversa da  . Invece, l'espressione

((a > b) & c)

AND









restituisce un valore diverso da  se a è maggiore di b e, contemporaneamente, c è dispari. Infatti un'espressione vera restituisce  , e tutti i valori dispari hanno il bit meno significativo ad  , pertanto il prodotto logico ha un bit ad  (quello meno significativo, ed è dunque diverso da  ) solo se entrambe le condizioni sono vere.

OR









L'operatore di or su bit è invece utilizzato per calcolare quella che viene comunemente indicata come somma logica di due valori. Quando due bit vengono posti in OR, il risultato è sempre  , tranne il caso in cui entrambi i bit sono a  . Il comportamento dell'operatore di somma logica è riassunto nella tabella. Si noti che il concetto di maschera può essere validamente applicato anche alle operazioni di OR tra due valori, in particolare quando si voglia assegnare il valore  ad uno o più bit di una variabile. Infatti la presenza di un  nella maschera porta ad  il corrispondente bit del risultato, mentre uno  nella maschera lascia inalterato il bit del valore originario (questo comportamento è l'esatto opposto di quello dell'operatore '&

L'operazione di OR sui bit dei valori  FFh) è rappresentabile come segue:




e restituisce . Il simbolo dell'operatore di or su bit è ' ', e non va confuso con quello dell'operatore di or logico (' ', pag.  ); del resto tra i due operatori esistono differenze di significato del tutto analoghe a quelle accennate poco fa circa gli operatori di and su bit e di and logico.

XOR









Esiste un terzo operatore logico su bit: l'operatore di xor su bit, detto anche 'or esclusivo'. Il suo simbolo è un accento circonflesso (' '). Un'operazione di XOR tra due bit fornisce risultato  quando i due bit hanno uguale valore (cioè sono entrambi  o entrambi  ), mentre restituisce 1 quando i bit hanno valori opposti (il primo  ed il secondo  , o viceversa): la tabella evidenzia quanto affermato. Se ne trae che la presenza di un  in una maschera utilizzata in XOR, dunque, inverte il bit corrispondente del valore originario. Rispolverando ancora una volta (con la solenne promessa che sarà l'ultima) l'esempio del valore  mascherato con un  , si ha:




Il risultato è 


Scarica gratis Operatori logici su bit
Appunti su:



Scarica 100% gratis e , tesine, riassunti



Registrati ora

Password dimenticata?
  • Appunti superiori
  • In questa sezione troverai sunti esame, dispense, appunti universitari, esercitazioni e tesi, suddivisi per le principali facoltà.
  • Università
  • Appunti, dispense, esercitazioni, riassunti direttamente dalla tua aula Universitaria
  • all'Informatica
  • Introduzione all'Informatica, Information and Comunication Tecnology, componenti del computer, software, hardware ...