|
 |
Numeri
e Logica Binaria |
SCHEDA n° 09 [
11
di 20] |
 |
|
Operazioni
Logiche su Numeri Binari: la Funzione NOT |
|
 | La funzione
NOT è molto
particolare; coinvolge una sola variabile (A)
ed ha il compito di restituirne il valore logico opposto. |
 | La Tabella di Verità
per la funzione NOT di
A è quindi molto semplice: |
 | Se
A è a 1
(vera) la funzione NOT=f(A)
è a 0 (falsa),
e viceversa. |
 | Il processore 80x86 prevede
l'istruzione omonima,
NOT,
con operandi di tutte le dimensioni (a 8, 16, 32 bit, ...). |
 | Per la sua natura la funzione
NOT si presta perfettamente per
implementare il meccanismo del complemento
a 1; nell'esempio che segue l'operando a 8 bit è semplicemente rovesciato,
bit dopo bit: |
55H
= 0101 0101 NOT
=
-------------
AAH
= 1010 1010
|
 |
|
Operazioni
Logiche su Numeri Binari: la Funzione XOR |
|
 | Tra le possibili funzioni logiche
ce n'è una molto particolare; si tratta dell'OR
ESCLUSIVO, o XOR (eXlusive
OR). |
 | La sua Tabella di Verità
è la seguente: |
|
A |
B |
XOR |
|
0 |
0 |
0 |
|
0 |
1 |
1 |
|
1 |
0 |
1 |
|
1 |
1 |
0 |
 | Il contenuto della Tabella
ricorda quello della funzione OR;
osservando le differenze si giustifica anche il suo nome: si tratta della
stessa funzione, se si esclude l'ultima
combinazione (A=1,B=1)
delle variabili in ingresso, per la quale la XOR
non è più vera. Quindi: |
|
la funzione
XOR è vera se
A o
B sono
vere, ma non
entrambe |
 | Ora osserva la tabella seguente (è la copia di quella
proposta in fondo alla
pagina
che tratta della somma aritmetica): |
|
A |
B |
Somma |
Riporto |
|
0 |
0 |
0 |
0 |
|
0 |
1 |
1 |
1 |
|
1 |
0 |
1 |
1 |
|
1 |
1 |
0 |
1 |
 | La funzione logica
XOR ha la stessa Tabella di Verità
della somma aritmetica! |
 | Questa importante osservazione giustifica la ragione della
sua esistenza; i costruttori di logica hanno voluto mettere a disposizione uno
strumento che potesse colmare lo strappo dichiarato fin dall'inizio: la
differenza tra ambiente logico e
ambiente aritmetico... |
 | Dunque, con una logica
XOR
è possibile simulare un'operazione aritmetica. |
 | Il processore 80x86 prevede
l'istruzione omonima,
XOR,
con operandi di tutte le dimensioni (a 8, 16, 32 bit, ...); con operandi a 8
bit vale l'esempio: |
55H
0101 0101 XOR
F0H
1111 0000 =
-------------
A5H
= 1010 0101 |
 | L'esempio proposto evidenzia la caratteristica principale
della XOR
(sintetizzata dalla Tabella di Verità):
la somma esclusiva di
bit uguali tra loro è sempre
0 e, viceversa, la
somma esclusiva di bit diversi tra
loro è sempre 1. |
 | Questo funzionamento sottolinea uno degli usi più raffinati di
questa funzione: quello di azzerare
un determinato dato; l'esempio seguente sottolinea che se i 2
operandi sono uguali
il risultato non può che essere
00H: |
55H
0101 0101 XOR
55H
0101 0101 =
-------------
00H
= 0000 0000 |
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|