LEZIONE
“CODIFICA DELL'INFORMAZIONE”
PROF. GIOVANNI ACAMPORA
Università Telematica Pegaso
Codifica dell’informazione
Indice
1
Rappresentazione dei dati ......................................................................................................... 3
1.1.
Rappresentazione dei numeri ............................................................................................... 3
1.1.1 Rappresentazione del segno in un numero ...................................................................... 8
1.1.2 Rappresentazione dei numeri frazionari ........................................................................ 11
1.2 Rappresentazione dei caratteri ................................................................................................. 12
1.3 Rappresentazione delle immagini ............................................................................................ 16
2
Elettronica digitale ................................................................................................................... 18
Bibliografia/Sitografia ..................................................................................................................... 23
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
2 di 23
Università Telematica Pegaso
Codifica dell’informazione
1 Rappresentazione dei dati
Il primo problema da affrontare nei processi di elaborazione dell'informazione è la
rappresentazione dell'informazione. L'informazione consiste nella ricezione di un messaggio tra un
insieme di possibili messaggi. La definizione esatta è che l'informazione si rappresenta usando un
numero finito di simboli affidabili e facilmente distinguibili.
All'interno delle apparecchiature digitali l'informazione è rappresentata mediante livelli di
tensione elettrica presenti nei loro circuiti. Le richieste di affidabilità ci impongono che tali simboli
per una maggiore efficienza siano due: 0 e 1, corrispondenti a 2 livelli di tensione (standard TTL:
0/5 V; standard RS-232: +12 / -12 V) che vanno a formare la numerazione binaria. La presenza di
tensione può essere modellata dal simbolo 1. L'assenza di tensione può essere modellata da simbolo
0.
Anche gli elaboratori, che sono sistemi digitali, usano l‟aritmetica binaria per eseguire la
trasformazione delle informazioni in stringhe di dati composte di 0 e 1. I dati, infatti, devono essere
codificati in maniera da poter essere “manipolati” dall‟elaboratore il quale al suo interno opera
soltanto con segnali a due valori (binari). I sistemi digitali consentono di “trasformare i dati”
attraverso sequenze di operazioni: gli algoritmi.
1.1.
Rappresentazione dei numeri
Un sistema di numerazione è un sistema utilizzato per esprimere i numeri e le operazioni
effettuabili su di essi.
Il sistema numerico più noto, perché usato nella vita quotidiana, è sicuramente il sistema
decimale-posizionale. Le caratteristiche rilevanti del sistema numerico decimale-posizionale sono
appunto il principio posizionale (le unità prendono diverso valore a seconda delle posizioni) e l'uso
di dieci simboli, comprensivi dello zero. Da notare che in tale sistema non sono presenti gli
indicatori delle potenze di 10. Le posizioni si contano da destra a sinistra partendo da 0. La cifra più
a destra è definita meno significativa (LSD) mentre quella più a sinistra più significativa (MSD).
Il sistema numerico binario, riconosciuto da un calcolatore, è una delle più grandi
invenzioni del matematico tedesco Gottfried Wilhelm Leibniz anche se è grazie al matematico
inglese George Boole che avrà il suo grande successo. Il sistema binario ha, come il sistema
decimale, la caratteristica di essere posizionale, ovvero il valore di una cifra (digit) dipende dalla
posizione che essa assume all'interno del numero, ma ovviamente differisce perché usa solo due
cifre (0 e 1). Inoltre il sistema binario ha base 2, ovvero usa potenze di 2, non di 10. Infatti,
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
3 di 23
Università Telematica Pegaso
Codifica dell’informazione
formalmente, la base di numerazione posizionale corrisponde al numero di simboli usati per
scrivere tutti i numeri ed indica quante unità di un certo ordine sono necessarie per formare un'unità
dell'ordine immediatamente superiore.
Poiché il sistema binario ha base 2, la cifra in posizione n (da destra e ricordando che la
numerazione delle posizioni parte da zero) si considera moltiplicata per 2(n ) anziché per 10(n ) come
avviene nella numerazione decimale.
Più in dettaglio, considerando il caso generale in base p si ha:
La notazione posizionale si oppone a quella additiva utilizzata ad esempio nel sistema di
numeri romani dove si ha:
Descriviamo adesso come avvengono le operazioni base nel sistema binario.
Consideriamo due numeri binari A = An-1…Ai+1 Ai Ai-1…A1A0 e B = Bn-1…Bi+1 Bi Bi-1…B1B0
che utilizzano n bit (se uno dei due ha m < n bit basta aggiungere n – m zeri davanti).
Mostriamo come avviene l‟operazione di addizione. Considerando la generica cifra di posto
i: Ai e Bi. Le possibili combinazioni che possono assumere tali cifre sono:
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
4 di 23
Università Telematica Pegaso
Codifica dell’informazione
Facciamo due esempi:
Osserviamo che anche se A, B utilizzano 4 bit, la loro somma potrebbe superare i 4 bit, ad
esempio, 1110 + 0100 = 10010 (14(10) + 4(10) = 18(10)). Pertanto se nel calcolatore avessimo stabilito
di utilizzare 4 bit il risultato visualizzato sarebbe stato 0010, ossia 2(10), giacché il bit più
significativo verrebbe ignorato. In tal caso viene generato un errore noto con il nome di
tracimazione (overflow).
Mostriamo ora come si esegue la sottrazione.
Considerando la generica cifra di posto i: Ai e Bi. Le possibili combinazioni che possono
assumere le cifre suddette sono:
Dato che, per ora, sappiamo rappresentare solo numeri binari interi positivi, vedremo esempi
di sottrazione solo nel caso in cui A ≥ B.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
5 di 23
Università Telematica Pegaso
Codifica dell’informazione
Ovviamente oltre al sistema binario esistono altri sistemi posizionali che differiscono tra
loro per avere una diversa base. I più noti sono il sistema ottale (base 8) e il sistema esadecimale
(base 16).
Di seguito una tabella che confronta le rappresentazioni binarie, ottali, decimali ed
esadecimali dei numeri dallo zero al quindici.
binario ottale decimale esadecimale binario ottale decimale esadecimale
0000
0
0
0
1000
10
8
8
0001
1
1
1
1001
11
9
9
0010
2
2
2
1010
12
10
A
0011
3
3
3
1011
13
11
B
0100
4
4
4
1100
14
12
C
0101
5
5
5
1101
15
13
D
0110
6
6
6
1110
16
14
E
0111
7
7
7
1111
17
15
F
Vediamo adesso come eseguire la conversione da un numero binario ad un numero decimale
e viceversa.
Per ottenere la conversione da numero binario a numero decimale si esegue la
moltiplicazione delle cifre del numero binario per il rispettivo peso (2 elevato la posizione) e si
sommano i valori ottenuti.
Vediamone un esempio:
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
6 di 23
Università Telematica Pegaso
Codifica dell’informazione
In generale, la conversione da un numero in base b in un numero in base decimale si
esegue allo stesso modo della conversione da un numero in base 2, ovviamente considerando
potenze in base b e non in base 2.
La conversione, invece, da un numero decimale ad un numero binario avviene tramite
l‟algoritmo della divisione intera. I passi sono i seguenti:
1.
dividere il numero decimale per 2 (base del sistema binario) con una
divisione intera;
2.
il resto della divisione diventa la cifra meno significativa del numero binario;
3.
se il quoziente è 0 abbiamo finito;
4.
se il quoziente è diverso da zero si torna al passo 1 considerando il quoziente
come dividendo.
Quindi il numero binario si ottiene eseguendo una successione di divisioni per 2 (base del
sistema binario) del numero decimale fino ad arrivare ad un quoziente pari a 0 e considerando i resti
al contrario.
Vediamone un esempio.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
7 di 23
Università Telematica Pegaso
Codifica dell’informazione
Anche in questo caso, la conversione da decimale ad un numero in base b generica avviene
allo stesso modo della conversione in base 2 ovviamente considerando divisioni successive per b
non per 2.
Per completezza esaminiamo anche la conversione da binario ad ottale e da binario ad
esadecimale. Per trasformare un numero binario in ottale si eseguono i seguenti passi:
1. si considera il numero binario partendo da destra e lo si divide in gruppi di 3 cifre
binarie. Se dopo l'operazione avanzano una o due cifre si aggiungono tanti zeri quanti bastano a
coprire un gruppo di tre, per il criterio secondo cui 0...0100 = 100 .
2. Ogni gruppo va poi convertito nel corrispondente numero decimale.
Allo stesso modo avviene la conversione da un numero binario ed uno esadecimale ma con
la differenza di dover dividere il numero binario in gruppi di 4 cifre e non di tre.
Vediamone un esempio.
1.1.1
Rappresentazione del segno in un numero
Fino ad ora abbiamo visto come è possibile rappresentare i numeri naturali attraverso la
rappresentazione binaria. Poiché i computer possono operare solo su due differenti simboli, è
necessario adottare una “convenzione” per la rappresentazione dei numeri interi negativi.
La convezione standard denominata modulo e segno consiste nel considerare il bit più a
sinistra per la rappresentazione del segno:
0 = „+‟
1 = „-‟
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
8 di 23
Università Telematica Pegaso
Codifica dell’informazione
Consideriamo un esempio:
1101 = -101 = -5
In tal modo, se si utilizzano n bit, è possibile rappresentare 2n-1 numeri. Ad esempio, se n=2
è possibile rappresentare 22-1=3 numeri, essendo ridondante la rappresentazione del numero 0 si ha:
11 = -1; 10 = 0; 00 = 0; 01 = 1
Se n=8 è possibile rappresentare 28-1= 255 numeri, ovvero:
11111111 = -127
11111110 = -126
…
10000000 = 0
00000000 = 0
…
01111110 = 126
01111111= 127
In generale con n bit si rappresentano i valori da – 2n-1-1 a 2n-1-1.
In realtà il metodo più diffuso per la rappresentazione dei numeri negativi in informatica è
data dalla notazione complemento a 2. La sua enorme diffusione è dovuta al fatto che, grazie a
questa notazione, è possibile utilizzare un solo circuito, il sommatore, sia per l'addizione che per la
sottrazione. Infatti, si comprende il segno del numero binario esaminando il primo bit. In dettaglio,
col complemento a due, il bit iniziale (più a sinistra) del numero ha peso negativo o positivo; da
questo deriva che tutti i numeri che cominciano con un "1" sono numeri binari negativi, mentre tutti
i numeri che cominciano con uno "0" sono numeri binari positivi.
Nella notazione a complemento a 2, dati n bit, un numero positivo N è rappresentato in
modo standard (come abbiamo visto per i naturali), mentre –N si rappresenta come 2n – (N).
Un metodo pratico per calcolare –N, ovvero l'opposto di un numero binario in
complemento a 2, si compone dei seguenti passi:
-
rappresentare il modulo N in modo standard;
-
complementare tutti i bit (1 → 0, 0 → 1);
-
sommare 1.
Facciamo un esempio rappresentando il numero -5 con 8 bit in complemento a 2.
Consideriamo la rappresentazione in binario del numero 5.
0000 0101 (5)
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
9 di 23
Università Telematica Pegaso
Codifica dell’informazione
La prima cifra è 0, questo denota che il numero è sicuramente positivo.
Invertiamo i bit: 0 diventa 1, e 1 diventa 0:
1111 1010
A questo punto abbiamo ottenuto il complemento a uno del numero 5; per ottenere il
complemento a due aggiungiamo 1 a questo numero:
1111 1011 (-5)
Il risultato è un numero binario con segno che rappresenta il numero negativo -5 secondo il
complemento a due. Il primo bit, pari a 1, evidenzia che il numero è negativo.
Il complemento a due di un numero negativo ne restituisce il numero positivo pari al valore
assoluto: invertendo i bit della rappresentazione del numero -5 (sopra) otteniamo:
0000 0100
Aggiungendo 1 otteniamo:
0000 0101
Che è appunto la rappresentazione del numero +5 in forma binaria.
In maniera ancora più veloce si potrebbe prende un numero composto da una quantità di
cifre a uno, pari alla stessa quantità di cifre del numero di partenza ed eseguire la sottrazione, poi si
aggiunge il valore uno al risultato finale.
Vediamone un esempio: rappresentiamo in binario il numero -51, partendo dalla
rappresentazione binaria di 51 (001100112).
Pertanto nella notazione complemento a 2, un numero binario di n cifre può rappresentare
con questo metodo i numeri compresi fra -2n-1 e +2n-1-1, così un binario di 8 cifre può rappresentare
i numeri compresi tra -128 e +127. Da notare che esiste una sola rappresentazione dello zero:
quando tutti i bit sono zero, eliminando così la ridondanza dello zero che si verifica con la
rappresentazione in modulo e segno.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
10 di 23
Università Telematica Pegaso
1.1.2
Codifica dell’informazione
Rappresentazione dei numeri frazionari
Vediamo ora come rappresentare numeri con la virgola decimale, cioè con espressioni in cui
compaiono frazioni decimali. Dato che in un bit non è rappresentabile la virgola, il metodo
più semplice potrebbe essere quello di rappresentare numeri frazionari scegliendo a priori quanti bit
usare per la parte intera e quanti per la parte decimale. Questo metodo prende il nome di
rappresentazione in virgola fissa. Il numero frazionario è rappresentato come una coppia di numeri
interi: la parte intera e la parte decimale. Se si utilizzano 8 bit sia per la parte intera che per la parte
decimale, il numero 12.54 è codificato come segue: 12.52 → (12, 52) → (00001100, 00110100).
Comunque questo metodo è ormai abbandonato.
Il metodo attualmente utilizzato è invece la cosiddetta rappresentazione in virgola mobile
(floating point). In particolare, lo standard IEEE P754 comporta l'utilizzo della notazione
scientifica, in cui ogni numero è identificato dal segno, da una mantissa (1,xxxxx) e dall'esponente
(nyyyyy). Nel formato a precisione singola si utilizza 1 bit per il segno, 8 bit per l'esponente e 23 bit
per la mantissa.
La procedura standard per la conversione da numero decimale a numero binario P754 è la
seguente:
1.
Prima di tutto il numero, in valore assoluto, va convertito in binario.
2.
Il numero va poi diviso (o moltiplicato) per 2 fino a ottenere una forma del
tipo 1,xxxxxx.
3.
Di questo numero viene eliminato l'1 iniziale (per risparmiare memoria)
4.
Il numero di volte per cui il numero è stato diviso (o moltiplicato) per 2
rappresenta l'esponente: questo valore (decimale) va espresso in eccesso 127, ovvero è
necessario sommare 127 e convertire il numero risultante in binario (formato a precisione
singola).
Per esempio, convertiamo il valore − 14,312510 in binario P754 con formato a singola
precisione:
1.
Convertiamo prima di tutto il numero: 1410 = 11102 per la parte intera e
0,312510 = 0,01012. Quindi il numero definitivo è 1110,01012 (segno escluso).
2.
Dividiamo poi il numero per 2 per ottenere la seguente notazione:
1110,01012 = 1,11001012 * 23
3.
La mantissa diventa, quindi: 1100101.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
11 di 23
Università Telematica Pegaso
4.
Codifica dell’informazione
Per esprimere l'esponente in eccesso 127, infine: 127 + 3 = 13010 =
100000102
Il numero, alla fine, sarà espresso nel formato:
1 10000010 11001010000000000000000
1.2 Rappresentazione dei caratteri
Consideriamo ora un altro tipo di informazione, ossia i testi scritti, composti quindi da una
sequenza di caratteri. I caratteri sono quei simboli alfabetici o numerici che vengono introdotti
attraverso l‟impiego di una tastiera. Le tastiere possono essere diverse in base al paese dove si
impiegano in quanto ci sono paesi che usano tipi di caratteri diversi: ad esempio, in Francia o
Spagna si usa un particolare carattere, la cedilla ç, e pertanto nelle tastiere di questi paesi é presente
un tasto relativo. Ovviamente se è permesso di cambiare facilmente tastiera da un paese all‟altro, un
computer deve essere ideato per funzionare indipendentemente dal paese.
Quanti bit sono necessari per rappresentare un carattere? La soluzione più diffusa
attualmente é quella a 8 bit con la quale si possono rappresentare 256 caratteri.
Inoltre bisogna associare in maniera standard i caratteri alle varie combinazioni di numeri
binari, ad esempio, la combinazione 33 (00100001) corrisponde normalmente alla A (a maiuscola),
ma chi lo stabilisce? Ovviamente è necessario uno standard. Oggi quello più diffuso é lo standard
ASCII (American Standard Code for Information Interchange) a 7 bit.
Nello specifico lo standard ASCII a 7 bit non dà una definizione dei caratteri dalla
combinazione 128 fino alla 255, pertanto vi sono varie possibilità.
Una di queste è la codifica ASCII ESTESA a 8 bit.
Per i caratteri nei moderni sistemi operativi è utilizzata la codifica UNICODE a16 bit. Il
numero di possibili simboli rappresentabili é 65536, e si possono utilizzare anche per rappresentare
caratteri ideografici come ad esempio il Kanij dei giapponesi.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
12 di 23
Università Telematica Pegaso
Codifica dell’informazione
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
13 di 23
Università Telematica Pegaso
Codifica dell’informazione
Figura 1: Tabella ASCII dei caratteri non stampabili
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
14 di 23
Università Telematica Pegaso
Codifica dell’informazione
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
15 di 23
Università Telematica Pegaso
Codifica dell’informazione
Figura 2: Tabella ASCII dei caratteri stampabili
1.3 Rappresentazione delle immagini
Consideriamo infine un ultimo tipo di informazione: le immagini, statiche ed in movimento.
Memorizzare un'immagine in formato binario richiede la "discretizzazione" dell'immagine in un
certo numero di componenti, detti pixel, corrispondenti ai singoli punti posti sullo schermo.
Risoluzioni tipiche degli schermi (pixel per riga x pixel per colonna) sono 640x480, 800x600,
1024x864, 1152x864, 1280x1024.
Figura 3: Immagine discretizzata in pixel
Ad ogni pixel associamo una rappresentazione binaria:
Figura 4: Ad Ogni pixel è associato un bit
Usando un solo bit ad ogni pixel si possono rappresentare però solo immagini in bianco e
nero, in quanto ogni pixel può assumere un solo colore. Per rappresentare immagini a diversi livelli
di grigio o a colori bisogna associare un numero maggiore di bit:
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
16 di 23
Università Telematica Pegaso
Codifica dell’informazione
-
con 8 bit per pixel: 28 = 256 livelli di grigio;
-
con 24 bit per pixel: 224 = 16777216, 16.7 milioni di colori.
Pertanto ci si può rendere facilmente conto della quantità di memoria necessaria per
immagazzinare le immagini. Per questo motivo tipicamente le immagini non vengono memorizzate
come una semplice sequenza di colori associati ad ogni pixel, ma piuttosto vengono utilizzati dei
formati di compressione, che permettono una riduzione della memoria richiesta per l‟immagine. I
due formati utilizzati più frequentemente sono il formato gif ed il formato jpeg.
Oltre alle immagini statiche, è possibile immagazzinare sequenze di immagini, ovvero
filmati. Un formato molto utilizzato per memorizzare sequenze di immagini è il formato mpeg, che
rappresenta un‟estensione del formato jpeg.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
17 di 23
Università Telematica Pegaso
Codifica dell’informazione
2 Elettronica digitale
L'elettronica digitale ha avuto inizio nel 1946 con la costruzione di un calcolatore elettronico
digitale, ENIAC, realizzato con circuiti a valvole. Essa tratta con circuiti e sistemi che agiscono
sfruttando due possibili stati di funzionamento (due livelli di tensione). Infatti, un segnale digitale, a
differenza di uno analogico, può assumere solo determinati valori, ad esempio, uno alto e uno basso
(segnale binario). Più in dettaglio, la differenza fondamentale tra segnale analogico e segnale
digitale è che nei segnali analogici l'informazione è contenuta nella "forma" stessa del segnale, nei
segnali digitali l'informazione da elaborare è codificata in serie di simboli (1 e 0). L'onda quadra
perfetta mostrata in figura 5 è in realtà un'idealizzazione matematica che nella realtà non esiste
poiché il rumore la farà "fluttuare". Quel che conta però è che le fluttuazioni si mantengano entro un
certo margine in modo che non si perda l'informazione ovvero la distinzione tra i soli due stati fisici
possibili (alto e basso).
Figura 5: In alto esempio di segnale analogico in basso esempio di uno digitale
Gli elementi base dell'elettronica digitale sono le porte logiche. Esse sono di vario tipo, tutte
caratterizzate dall'avere uno o più ingressi ed uscite. Il comportamento di una porta logica viene
indicato in un'apposita tabella, chiamata "tavola della verità". Le operazioni logiche fondamentali,
per ognuna delle quali esiste un tipo di porta logica, sono le seguenti: AND, OR, XOR, NOT. A
queste si aggiungono le versioni delle prime tre con l'uscita invertita, avendo così anche le seguenti:
NAND, NOR, XNOR. A parte la funzione NOT che ha un solo ingresso e le XOR e XNOR che
dispongono al massimo di due ingressi, le altre porte logiche possono disporre, teoricamente, di un
qualunque numero di ingressi; tutte invece dispongono di una sola uscita (o al massimo anche
dall'uscita complementare ovvero invertita). Vediamole in dettaglio.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
18 di 23
Università Telematica Pegaso
Codifica dell’informazione
La funzione logica AND fornisce un'uscita "vera" solo quando tutti gli ingressi sono "veri".
Analogamente, una porta logica AND fornisce un livello logico "1" solo quando tutti gli ingressi
presentano un livello logico =1".
Ingress
oB
Ingress
oA
Uscita
OUT
0
0
0
0
1
0
1
0
0
1
1
1
La funzione logica NAND fornisce un'uscita "falsa" solo quando tutti gli ingressi sono
"veri". Analogamente, una porta logica NAND fornisce un livello logico "0" solo quando tutti gli
ingressi presentano un livello logico "1".
Ingress
oB
Ingress
oA
Uscita
OUT
0
0
1
0
1
1
1
0
1
1
1
0
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
19 di 23
Università Telematica Pegaso
Codifica dell’informazione
La funzione logica OR fornisce un'uscita "vera" quando almeno un ingresso è "vero".
Analogamente, una porta logica OR fornisce un livello logico "1" quando almeno un ingresso
presenta un livello logico "1".
Ingress
oB
Ingress
oA
Uscita
OUT
0
0
0
0
1
1
1
0
1
1
1
1
La funzione logica NOR fornisce un'uscita "falsa" quando almeno un ingresso è"vero".
Analogamente, una porta logica NOR fornisce un livello logico "0" quando almeno un ingresso
presenta un livello logico "1".
Ingress
oB
Ingress
oA
Uscita
OUT
0
0
1
0
1
0
1
0
0
1
1
0
La funzione logica XOR fornisce un'uscita "vera" solo quando i due ingressi presentano le
condizioni logiche opposte. Analogamente, una porta logica XOR fornisce un livello logico "1"
solo quando i due ingressi presentano livelli logici opposti.
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
20 di 23
Università Telematica Pegaso
Codifica dell’informazione
Ingress
Ingress
oB
oA
Uscita
OUT
0
0
0
0
1
1
1
0
1
1
1
0
La funzione logica XNOR fornisce un'uscita "falsa" solo quando i due ingressi presentano
le condizioni logiche opposte. Analogamente, una porta logica XNOR fornisce un livello logico "0"
solo quando i due ingressi presentano livelli logici opposti.
Ingress
Ingress
oB
oA
Uscita
OUT
0
0
1
0
1
0
1
0
0
1
1
1
La funzione logica NOT fornisce un'uscita "vera" quando il suo ingresso presenta una
condizione "falsa" e viceversa. Analogamente, una porta logica NOT fornisce un livello logico "1"
quando il suo ingresso presenta un livello logico "0" e viceversa.
Ingresso
A
Uscita
OUT
0
1
1
0
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
21 di 23
Università Telematica Pegaso
Codifica dell’informazione
Mostriamo un esempio di circuito logico costituito appunto con l‟uso delle porte logiche.
Possiamo scrivere le due uscite S e R in termini di operazioni logiche come segue:
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
22 di 23
Università Telematica Pegaso
Codifica dell’informazione
Bibliografia/Sitografia
 Spirito Paolo, Elettronica digitale, McGraw-Hill, 2006
 Enea M.R., Saeli D., Sistemi Numerici. Un’introduzione. Aracne, 2009
 Wikipedia, L‟enciclopedia libera: http://it.wikipedia.org
Attenzione! Questo materiale didattico è per uso personale dello studente ed è coperto da copyright. Ne è severamente
vietata la riproduzione o il riutilizzo anche parziale, ai sensi e per gli effetti della legge sul diritto d’autore
(L. 22.04.1941/n. 633)
23 di 23
Scarica

codifica dell`informazione - Università Telematica Pegaso