Sezione |
Indirizzi Base
Registri Interni
|
Schede del Tutorial |
Numeri e Logica Binaria |
SCHEDA n° 09 [ 11 di 20] |
|
|
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: |
|
A | NOT |
0 | 1 |
1 | 0 |
|
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 |
|
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 |
|
Scheda n° 09 | Numeri e Logica Binaria | |||||||
Scheda n° 09 - 11 |
|
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|