L algebra di Boole
L'algebra di Boole comprende una serie di regole per eseguire operazioni con variabili logiche. Le variabili logiche possono assumere solo due valori. I due
possibili stati che possono assumere le variabili logiche sono tali da escludersi a vicenda: una variabile può
assumere o il valore falso o il valore vero.
t Volts
5
0
Questi valori, all'interno dei calcolatori, sono abbinati a due tensioni differenti denominate livello logico alto e livello logico basso.
Funzioni logiche
Una funzione matematica definita per variabili reali e a valori reali, come ad esempio y = a2 + b2 + c2, fa
corrispondere ai tre numeri reali a, b, c un altro numero reale y ottenuto con una certa regola che definisce la funzione stessa.
Anche per le variabili logiche si possono definire delle funzioni, che assumeranno valore vero o falso.
Le operazioni fondamentali
Le operazioni fondamentali dell'algebra di Boole sono tre:
-la somma logica (OR)
-il prodotto logico (AND) -la negazione (NOT)
Attraverso queste è possibile realizzare qualsiasi funzione logica ed implementare le operazioni più
complesse che un calcolatore è in grado di compiere.
Le operazioni fondamentali
Dal punto di vista elettronico queste funzioni elementari sono
realizzate con circuiti detti porte logiche, ciascuna indicata da un suo simbolo :
Porta logica OR
La funzione logica OR fornisce un'uscita "vera" quando
almeno un ingresso è "vero". Analogamente, una porta logica OR fornisce un livello logico "1”o “livello logico alto” quando almeno un ingresso presenta un livello logico "1".
Ingresso A Ingresso B Uscita OUT
0 0 0
0 1 1
1 0 1
1 1 1
Porta logica AND
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".
Ingresso A Ingresso B Uscita OUT
0 0 0
0 1 0
1 0 0
1 1 1
Porta logica NOT
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
Funzioni logiche AND e OR
Biomeccanica del ginocchio
Funzioni logiche AND e OR
Funzioni logiche AND e OR
Biomeccanica del ginocchio
Funzioni logiche AND e OR
Trova risulta7:
Funzioni logiche AND e OR
Le virgolette indicano di cercare la frase intera
Trova risulta7:
Funzioni logiche AND e OR
Trova risulta7:
Funzioni logiche AND e OR
Trova risulta7:
Funzione logica NOT
Funzione logica NOT
La funzione logica XOR (o OR ESCLUSIVO) 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.
Ingresso A Ingresso B Uscita OUT
0 0 0
0 1 1
1 0 1
1 1 0
Porta logica XOR
Porta logica NAND (NOT AND)
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".
Ingresso B Ingresso A Uscita OUT
0 0 1
0 1 1
1 0 1
1 1 0
Porta logica NOR (NOT OR)
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".
Ingresso B Ingresso A Uscita OUT
0 0 1
0 1 0
1 0 0
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.
Ingresso B Ingresso A Uscita OUT
0 0 1
0 1 0
1 0 0
1 1 1
Porta logica XNOR
Una delle funzioni principali della ALU (Arithmetic- Logic Unit) di un calcolatore è l'uso delle funzioni logiche per svolgere operazioni aritmetiche.
Somma binaria attraverso le funzioni logiche
La base di queste operazioni è la somma binaria: se riusciamo ad eseguire la somma binaria tra due
variabili binarie, possiamo anche sottrarle e, complicando la logica, moltiplicarle e dividerle.
Operazioni aritmetiche su numeri binari STESSE REGOLE VARIABILI LOGICHE!
Addizione:
0 + 0 = 0 con riporto 0 0 + 1 = 1 con riporto 0 1 + 0 = 1 con riporto 0 1 + 1 = 0 con riporto 1
1 + 1 = 1 0
1 0 1 + 1 1 = 1 0 0 0
1 0 1 1 0 1 0 1 + 1 0 0 0 1 1 0 = 1 1 1 1 1 0 1 1
1 1 1 + 1 1 = 1 0 1 0 Esempi:
Partiamo dalla somma di due bit, i cui possibili valori sono 0 e 1. Ci sono solo 4 possibili combinazioni (il carry rappresenta il riporto):
a b a+b carry
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Somma binaria attraverso le funzioni logiche
Come si nota, il risultato di a +b si ottiene con l'XOR di a e b: a+b = a XOR b
Somma binaria
a b a+b carry
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
Il circuito logico è presentato nella seguente figura ed è
detto semisommatore. Il resto (carry) si ottiene invece con l'AND:
carry = a AND b
Dato che abbiamo bisogno di addizionare numeri composti da più bit, è necessario considerare una variante del precedente metodo, che consenta di sommare più bit tenendo conto del riporto della somma precedente.
Ci serve quindi un addizionatore a 3 bit, detto sommatore completo.
Somma binaria
Possiamo scomporre la somma in due semisomme, ovvero sommando a e b ed il risultato con c. Se una delle somme o entrambe hanno
prodo;o un riporto, allora il carry verrà se;ato a 1.
Il circuito equivalente è mostrato nella seguente figura:
E' equivalente ad usare due semisommatori e una porta OR per calcolare il carry.
Possiamo dare quindi la seguente formula logica:
a+b+c = a XOR b XOR c
carry = (a AND b) OR (c AND (a XOR b))
Possiamo quindi me;ere in cascata più sommatori collegando l'uscita di carry ad una delle entrate per formare un addizionatore a più bit.
La tabella seguente illustra tutti i possibili stati degli input a b c e degli output somma e carry.
a b c a+b+c carry
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1
Somma binaria
Porte logiche
Esempio di circuito integrato (chiamato anche microchip o semplicemente chip)
contenente 4 porte logiche NAND: il chip 7400.
Definizione generica di immagine:
Superficie 2D di dimensioni finite con una determinata distribuzione
di intensità luminosa e di colori
Immagini
Nelle immagini analogiche
l intensità luminosa varia con continuità muovendosi lungo il piano
Immagini analogiche
Digitalizzazione:
• Rappresentazione numerica di un immagine
• Si ottiene in due fasi:
– Campionamento spaziale – Quantizzazione
Immagini digitali
Campionamento spaziale:
suddivisione dell immagine in rettangoli con coordinate (x,y) – x = numero colonna
– y = numero riga
Immagini digitali
Quantizzazione: assegnazione di un numero ad ogni rettangolo che ne rappresenta l intensità luminosa.
Possiamo avere:
• Immagini reali: acquisite da una scena reale mediante telecamera, scanner, …
Immagini digitali
• Immagini artificiali o di sintesi: generate all interno del calcolatore
– Non rappresentano necessariamente oggetti reali – Possono simulare scene reali
Immagini digitali
Immagini vettoriali. Nella grafica vettoriale un'immagine è descritta mediante un insieme di forme geometriche che definiscono punti, linee, curve e poligoni ai quali
possono essere attribuite diverse intensità luminose (o diversi colori e sfumature).
Immagini digitali
Effetto dell ingrandimento sulle immagini vettoriali e raster
Immagine tratta da wikipedia
Immagini vettoriali Immagini raster
Immagini raster o bitmap. Nell ambito delle immagini
digitali il termine raster (= trama, reticolo, griglia) indica la griglia ortogonale di punti che costituisce l immagine.
Immagini digitali
Nella grafica raster l'immagine viene vista come una
scacchiera e ad ogni elemento della scacchiera, chiamato pixel, viene associata una specifica intensità luminosa (o un colore).
Ogni quadratino di questa griglia costituisce un pixel. Ad ogni pixel è assegnato un numero (binario) che esprime l’intensità luminosa o il colore in quel punto dell’immagine.
Immagini digitali
Nel caso di immagini in bianco e nero basta un bit per descrivere l’intensità luminosa di ciascun pixel. Se contiamo i pixel a partire dal più in alto a sx, possiamo assegnare a questa figura geometrica la seguente serie di bit:
1111111111 1110000011 110000001 1110000011 1111111111 che saranno memorizzati in un file, per es: ellisse.bmp
1 1 1 1 1 1 1 1 1
1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
Immagini digitali
Nel caso di immagini in bianco e nero basta un bit per descrivere l’intensità luminosa di ciascun pixel. Se contiamo i pixel a partire dal più in alto a sx, possiamo assegnare a questa figura geometrica la seguente serie di bit:
1111111111 1110000011 110000001 1110000011 1111111111 che saranno memorizzati in un file, per es: ellisse.bmp
1 1 1 1 1 1 1 1 1
1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
Immagini digitali
0 0 0 0 0 0 0 00 0 0
0 0 0 0
Immagini digitali
Nell esempio precedente la griglia era formata da pochissimi pixel, comportando una scarsa risoluzione dell immagine.
Solitamente, nelle immagini digitali acquisite con le moderne fotocamere, i punti sono molto più numerosi consentendo immagini più dettagliate quando vengono stampate o visualizzate su un monitor.
Immagini digitali
Più pixel sono usati per rappresentare un'immagine, più il risultato assomiglierà all'immagine originale.
La quantità di pixel di cui è formata l’immagine può essere espressa:
da un solo numero, come tre megapixel (es.:
fotocamera con tre milioni di pixel)
da una coppia di numeri, es.: schermo 640 x 480, che ha 640 pixel in larghezza e 480 in altezza perciò con un numero totale di pixel di 640*480 = 307200.
Misura per la risoluzione:
• ppi = pixel per inch (pixel per pollice) – misura riferita all’immagine digitale
Immagini digitali
Risoluzione in numero di pixel e dimensione del singolo pixel determinano il livello di dettaglio.
Ad esempio un immagine da 620 x 431 pixel e con risoluzione 72 ppi avrà dimensioni fisiche:
Larghezza = 620/72 = 8,6 pollici = 21,9 cm Altezza = 431/72 = 5,98 pollici = 15,2 cm
Immagini digitali
Confronto tra due risoluzioni
Immagini digitali
Altra misura per la risoluzione:
• dpi = dots per inch (punti per pollice)
– per le periferiche (scanner, stampanti,monitor) – Esempio: risoluzione di scansione, di stampa od i visualizzazione.
Immagini digitali
Risoluzione della stampante
• Punti (dpi) di inchiostro per unità di lunghezza delle stampanti
• Tipiche risoluzioni delle stampanti:
– getto di inchiostro: 150, 300 o 600 dpi – laser: 300 o 600 dpi
Immagini digitali
Risoluzione del monitor
• Punti visualizzati per unità di lunghezza del monitor (dpi)
• Standard: 72 dpi, 96 dpi
Immagini digitali
Le dimensioni fisiche cioè quelle visualizzate sul monitor, ad esempio, dipendono da:
–dimensioni in pixel dell'immagine
Immagini digitali
Qual è il legame fra dimensioni in pixel e dimensioni fisiche delle immagini digitali?
– caratteristiche del monitor (grandezza e impostazione del monitor stesso)
Immagini digitali
Consideriamo ad esempio un immagine da 800 x 600 pixel e visualizziamola su un
monitor da 15 pollici con impostazione 800 x 600). Quanto apparirà grande?
In questo caso l immagine riempirà tutto lo schermo
Consideriamo la stessa immagine (800 x 600) ed un monitor 20 pollici con impostazione 800 x 600.
Immagini digitali
Anche in questo caso l immagine riempie tutto lo schermo, ma i singoli pixel sono più grandi
Immagini digitali
In questo caso i singoli pixel saranno più piccoli, così come l immagine complessiva che andrà ad occupare solo una parte dello schermo.
Consideriamo sempre la stessa immagine (800 x 600) e lo stesso monitor da 20 pollici ma con impostazione 1024 x 768.
Dimensione immagini sul monitor
• Pixel convertiti in punti del monitor
• Esempio
– Immagine da 1x1 pollici, risoluzione 144 ppi, monitor 72 dpi
– 2 x 2 pollici sullo schermo
Immagini digitali
Qual è il legame fra risoluzione in pixel
dell’immagine e dimensioni finali sul monitor?
Campionamento spaziale:
suddivisione dell immagine in rettangoli con coordinate (x,y) – x = numero colonna
– y = numero riga
Immagini digitali
Quantizzazione: assegnazione di un numero ad ogni rettangolo che ne rappresenta l intensità luminosa.
Con questa procedura, detta resampling (ricampionamento), non otteniamo in realtà nessun aumento dell’informazione contenuta nell’immagine (e quindi del suo dettaglio).
Ciascun pixel nero sarebbe sostituito da 4 pixel neri e l’immagine ci apparirebbe esattamente come prima.
1 1 1 1 1 1 1 1 1
1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
Immagini digitali
0 0 0 0 0
0 0 00 0 0 0 0 0 0
E’ semplice aumentare il numero di pixel in una immagine. Ad
esempio potremmo dividere
ciascun pixel di questa immagine in quattro, quadruplicando il
numero di pixel totali.
La quantità effettiva di informazione contenuta nell immagine digitale dipende dalla risoluzione di input cioè dalla densità delle informazioni catturate nella digitalizzazione.
Immagini digitali
Esempi:
– Scanner = risoluzione di scansione
– Fotocamera digitale = pixel totali sul sensore CCD (es. 1680 x 1200)
Immagini digitali
Un immagine digitale è una rappresentazione del mondo reale e non una copia. Tale rappresentazione è ottenuta trasformando una immagine continua (immagine reale) in un immagine discreta (immagine digitale). Per quanto il Campionamento spaziale possa essere accurato, la
digitalizzazione comporta comunque la perdita di una quota di informazione.
1 1 1 1 1 1 1 1 1
1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1
1 0 0 0
0 0
0 0 00 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1
1 1 1 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1
Immagini digitali
Quantizzazione:
Assegnazione ai pixel dei valori di intensità luminosa.
Quantizzazione:
I valori che rappresentano l intensità luminosa campionata sono in genere numeri interi e la loro conservazione richiede gruppi di bit di lunghezza appropriata.
Ricordiamo che il numero di valori rappresentabili
dipende dal numero di bit: con N bit si hanno 2N valori possibili.
Immagini digitali
Quantizzazione:
Immagini digitali
Il numero di bit per pixel definisce la gamma dinamica o profondità.
La profondità definisce il grado di precisione della rappresentazione numerica del segnale campionato.
Immagini digitali
I due parametri rilevanti per la determinazione della qualità di un immagine sono quindi:
- la risoluzione (data dal numero di pixel per unità di lunghezze (pollici)). E’ legata all’operazione di
campionamento spaziale
- la profondità (numero di bit per pixel). E’ legata all’operazione di quantizzazione.
Immagini digitali
Es: A parità di profondità (8 bit/pixel), la risoluzione influenza drammaticamente la qualità di queste due immagini
Immagini digitali
Es: a parità di risoluzione, il numero di livelli di grigio utilizzati contribuisce a definire nettamente i contorni delle forme.
Il numero di livelli di grigio è legato al contrasto, che rappresenta una delle caratteristiche più importanti delle immagini digitali.
Immagini digitali
Il termine contrasto indica la differenza in termini di intensità luminosa fra i punti di un immagine
Immagini digitali
La distribuzione delle frequenze dei livelli di grigio di una
immagine digitale può essere rappresentata con un istogramma dove, sull asse x sono rappresentati i livelli di grigio e su y il numero di pixel con quel livello di grigio.
In un immagine correttamente contrastata tale distribuzione copre in maniera continua tutti i livelli rappresentati
Immagini digitali
Esempio di immagine con basso contrasto: di tutta la scala dei valori di grigio possibili, solo un area molto ristretta è effettivamente presente nell immagine
Immagini digitali
Esempio di immagine con contrasto non corretto, ma in
questo caso il motivo è che i livelli dell immagine sono molto pochi e distribuiti in maniera discontinua lungo la scala dei grigi; distribuzioni di questo tipo sono spesso il risultato di un eccessivo incremento di contrasto.
Supponiamo di voler scannerizzare la seguente immagine:
• Stampa 10x15 cm
• Risoluzione 300 ppi
• Profondità 24 bit
Immagini digitali
Esercizio occupazione di memoria.
Quanta memoria verrà occupata sul pc?
10 x 15 cm = 3,94 x 5,91 inch
• (300*3,94) x (300*5,91)= 1182 x 1773 pixel
• 2.095.686 pixel * 3 byte = 6.287.058 byte
• … quasi 6 MB (5,9958 …)