Elementi di Informatica Facoltà di Economia

Documenti analoghi
Elementi di Informatica Facoltà di Economia

La codifica del testo

RAPPRESENTAZIONE DELLE INFORMAZIONI

RAPPRESENTAZIONE DELLE INFORMAZIONI

Sistemi di Elaborazione delle Informazioni

Codifica dei caratteri

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

La codifica delle immagini

La codifica delle immagini

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2

Codifica dell Informazione

CODIFICA DI CARATTERI

Codifica dell Informazione

Architettura dei calcolatori

Tecnologie per il web e lo sviluppo multimediale. Rappresentazione delle informazioni

La codifica. dell informazione

Il modello di Von Neumann

Introduzione ai Calcolatori Elettronici

Esame di INFORMATICA Lezione 4

Il computer P R O F. L O R E N Z O P A R I S I

Sistemi di Elaborazione delle Informazioni

Corso di Informatica

L ARCHITETTURA DEI CALCOLATORI. Il processore La memoria centrale La memoria di massa Le periferiche di I/O

Componenti e connessioni. Capitolo 3

CODIFICA DI CARATTERI

I.4 Rappresentazione dell informazione - Altre codifiche

Architettura di un elaboratore. Il modello di von Neumann

Informatica: Lez. 1. Andrea Payaro. (European Logistics Association)

Architettura dei computer

CODIFICA IMMAGINI IN BIANCO E NERO

La codifica. dell informazione. Tipi di informazione

Architettura hardware

La codifica binaria. Informatica B. Daniele Loiacono

Corso di Informatica

Informatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.

Il processore. Istituzionii di Informatica -- Rossano Gaeta

La codifica dell informazione

La codifica binaria. Fondamenti di Informatica. Daniele Loiacono

La codifica delle immagini

La codifica binaria. Informatica B. Daniele Loiacono

Fondamenti di Informatica

La codifica dell informazione. Rappresentazione binaria. Rappresentazione posizionale in base 10

Concetti Introduttivi. Rappresentazione delle informazioni

Elementi di informatica

Modulo 1. Concetti base della Tecnologia dell informazione. Prof. Nicolello Cristiano. Modulo 1

Lezione 15. L elaboratore Elettronico

Architettura dei Calcolatori Elettronici

Rappresentazione dell informazione

Numeri in virgola mobile

Abilità Informatiche. capitoli 1-2. Prof. Fabio Calefato a.a Giurisprudenza

Architettura dei calcolatori I parte Introduzione, CPU

Architettura di un calcolatore

Note sull architettura del calcolatore

Il sistema binario: bit e Byte Codifica del testo Il Byte come U.d.M. dell'informazione Multipli del Byte

Concetti Introduttivi

Il computer P R O F. L O R E N Z O P A R I S I

Struttura hw del computer

Componenti principali. Programma cablato. Architettura di Von Neumann. Programma cablato. Cos e un programma? Componenti e connessioni

Struttura di un sistema di elaborazione. SDE: basi. Descrizione dei componenti (2) Descrizione delle componenti

Informatica. 80 ore divise in 4 UFC. Docente: Michela Bacchin. Contatti: Tramite Ermes Studenti

Il calcolatore. È un sistema complesso costituito da un numero elevato di componenti. è strutturato in forma gerarchica

Sistemi di Elaborazione delle Informazioni

Il computer P R O F. L O R E N Z O P A R I S I

Componenti principali

Modulo 1: Le I.C.T. UD 1.3a: La Codifica Digitale delle Immagini

Le immagini digitali

Modulo: Elementi di Informatica

Rappresentazione dei numeri: il sistema di numerazione decimale

Elementi di informatica

Somma di numeri binari

La memoria principale

Informatica. Informazione L Informazione è un dato, o un insieme di dati, interpretati in un determinato contesto.

1.2 Concetti base dell Informatica: Informazione

Il Modello di von Neumann (2) Prevede 3 entità logiche:

La codifica dei suoni

Corso di Informatica

Calcolatore e unità di misura

Programmazione A.A Architettura dei Calcolatori. ( Lezione V ) Componenti hardware e loro schema funzionale

4 Architettura del Personal Computer

ARCHITETTURA DI UN ELABORATORE! Ispirata al modello della Macchina di Von Neumann (Princeton, Institute for Advanced Study, anni 40).!

ARCHITETTURA DI UN ELABORATORE

Aritmetica dei Calcolatori Elettronici

La "macchina" da calcolo

o Occorre rappresentare tale informazione in formato facilmente manipolabile dall elaboratore

Rappresentazione delle informazioni LA RAPPRESENTAZIONE DELLE INFORMAZIONI. Grandezze digitali. Grandezze analogiche

Informatica Generale

Sistemi di numerazione

Segnale analogico. Analogico vs digitale. Segnale digitale. Trasformazione da analogico a digitale

La codifica dei Suoni. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

Informatica giuridica

1.3a: La Codifica Digitale delle Immagini

1.3d: La Codifica Digitale dei Suoni

1.3c: La Codifica Digitale dei Suoni

SISTEMI INFORMATIVI AZIENDALI

G L O S S A R I O. Fondamenti di Informatica I - Università degli Studi di Trento Dott. Roberti Pierluigi

Computer e Programmazione

Informatica. Comunicazione & DAMS A.A. 2015/16. Dr.ssa Valeria Fionda

Programma del corso. Introduzione Rappresentazione delle Informazioni Calcolo proposizionale Architettura del calcolatore Reti di calcolatori

Informatica e Bioinformatica anno 2013/2014

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

Transcript:

Elementi di Informatica Facoltà di Economia Rappresentazione di dati Lezione: 13-27/10/15 summa@unibas.it 1

Analizziamo il metodo con cui è possibile codificare le informazioni tramite bit: testi, immagini, suoni. Le informazioni testuali sono rappresentate tramite un codice in cui ad ogni carattere è associata una sequenza univoca di bit. ANSI uniforma attraverso il codice ASCII (American Standard Code for Information Interchange) 8 bit per rappresentare caratteri, numeri, simboli Consideriamo la parola H e l l o 01001000 01100101 01101100 01101100 01101111 La notazione binaria è un modo di rappresentare i valori numerici usando solo le cifre 0 e 1 Conversione binario decimale 0 1 1 0 1 0 0 1 = 0*2 7 +1*2 6 +1*2 5 +0*2 4 +1*2 3 +0*2 2 +0*2 1 +1*2 0 = 64+32+8+1= 105 2

Conversione decimale binario 13 2 13 12 6 2 1 6 0 3 2 1 1 2 1 1 0 1 Operazione di addizione 1+ 1 0+ 1+ 0+ 1+ 1 00111010+ 0 0 1 1 1 00011011 0 1 1 10 11 01 3

In generale è sempre possibile esprimere un numero attraverso una base generica: Sia c m c m-1 c m-2 c 1 c 0 un numero rappresentato in base 2, usiamo: c m x 2 m + c m-1 x 2 m-1 + c m-2 x 2 m-2 + + c 1 x 2 1 + c 0 x 2 0 = N Esempio: 101011001 2 1 x 2 8 + 0 x 2 7 + 1 x 2 6 + 0 x 2 5 + 1 x 2 4 + 1 x 2 3 + 0 x 2 2 + 0 x 2 1 + 1 x 2 0 = 256 + 64 + 16 + 8 + 1 = 345

E indicato un esempio di conversione da decimale a binario con il metodo illustrato. Ricordiamo che la divisione intera di A su B implica la funzione INT; per esempio INT(1757/2) = 878 (senza la funzione INT si avrebbe 1757/2=878,5). Il resto della divisione di un numero A per un numero B è dato da : resto(a/b) = A B * INT(A/B) Per esempio: resto(1757/2) = 1757 2 * INT(1757/2) = 1757 2 * 878 = 1757 1756 = 1

Notazione in complemento e bit del segno per la rappresentazione dei numeri negativi Complemento a due Uno dei sistemi per rappresentare gli interi all interno dei computer è la notazione in complemento a due. Nei dispositivi moderni si basa su di una configurazione a 32 bit. 00000011 +3 10000011-3 bit più significativo come bit di segno 0 numero positivo 1 numero negativo Svantaggi: 1) Solo 7 bit per la rappresentazione dei numeri [-127; +127] 2) La somma non è sempre corretta con le regole adottate in precedenza 6

Conversione dei dati Nei calcolatori, le informazioni sono codificate come configurazione di zeri (0) e uno (1). Tali cifre vengono chiamate bit (binary digit) byte gruppo di bit (8 bit) bit 0 : valore falso bit 1: valore vero Manipolare bit significa manipolare valori vero/falso Operazioni boolenane (mat. George Boole 1815-1864) e operatori, essi combinano due valori di ingresso (input) per produrre un terzo valore in uscita (output). 0 0 AND 1 1 0 0 OR 1 1 0 0 XOR 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 1 NOT : 1 0 e 0 1 Misurazione della capacità di memoria: kilo 1024 byte (KB) x 10 3 0 1 1 1 Mega (MB) x 10 6 Giga (GB) x 10 9 Tera (TB) x 10 12 0 1 1 0 10

Conversione dei dati- Analogia con un circuito elettrico OR Basta chiudere uno degli interruttori per far accendere la lampadina AND E necessario chiudere entrambi gli interruttori per far accendere la lampadina NOT Ad interruttore aperto la lampadina è accesa 11

Ciascun operatore prende in input uno o due booleani e restituisce in output un altro booleano. AND, prende in input due operandi e produce in output un booleano, attenendosi al seguente comportamento: Se entrambi gli operatori sono true(1) allora l'output è true; in tutti gli altri casi l'output è uguale a false(0). OR, prende in input due operandi e produce in output un booleano, attenendosi al seguente comportamente: Se almeno uno degli operandi è uguale a true, l'output è true; altrimenti, se nessuno dei due operandi è uguale a true l'output sarà false. NOT, prende in input un solo operando e produce in output un booleano, attenendosi al seguente comportamento: Se l'operando di input è true allora l'output sarà false. Se, invece l'operando di input è false, allora l'output sarà uguale a true. In altri termini, l'operatore di NOT prende un input e ne restituisce l'esatto contrario. 12

Conversione dei dati Un dispositivo che, dati i valori d ingresso, produce l uscita di un operazione booleana è chiamato porta logica (gate). Le prime porte logiche erano realizzate con dispositivi elettrici (relè), attualmente sono realizzate con circuiti elettronici, dove le cifre 0,1 sono rappresentati da diversi livelli di tensione. memorie flip-flop AND I1 U NOT OR I2 Unico modo per portare la memoria a zero e inseriere su I2 il valore 1. 13

Combinazione I1=1, I2=0. I1=1 U=1 Combinazione I1=0, I2=1. I1=0 U=0 1 0 I2=0 1 1 I2=1 0 0 Se Viene messo a 0 il valore del primo ingresso Il valore 1 in ingresso alla porta AND impedisce di cambiare segno alla porta OR. Ovvero l unico modo per portare a U=0 e porre I2=1

Conversione dei dati Combinazione I1, I2=10. Ponendo I1=1, l uscita U si porta a 1 indipendentemente dallo stato precedente. Combinazione I1, I2=00. Essa è nota come combinazione di riposo poiché l uscita conserva lo stato precedente Combinazione I1, I2=01. Ponendo I2=1, l uscita U si porta a 0 indipendentemente dallo stato precedente. Combinazione I1, I2=11. Tale combinazione va evitata poiché da un punto di vista logico è una incongruenza: infatti I flip-flop non sono ha senso una famiglia comandare di circuiti il flip-flop atti a per produrre memorizzare un valore lo 0 di oppure uscita 0 l 1 o 1, che rimane costante finché un impulso su una della due linee di ingresso (I1,I2) non lo trasforma in un altro valore. L uscita di un flip-flop oscilla tra due stati sotto il controllo di stimoli esterni. L uscita non cambierà fino a quando ambedue gli ingressi nel circuito non saranno 0. Se si porta temporaneamente a 1 l ingresso superiore si forza l uscita a 1, mentre se si porta temporaneamente a 1 l ingresso inferiore, si porta l uscita a 0. 15

Memorizzazione e rappresentazione dei dati bit Notazione esadecimele (16 carattereri), nata per semplificare il numero delle cifre da rappresentare: Questo perché i byte sono multipli di 4 0000 0 esa 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 In questo modo è possibile rappresentare le cifre binarie:1010010011001000 come A4C8 Per archiviare i dati, un computer contiene un gran numero di circuiti flip-flop, ognuno in grado di memorizzare un singolo bit. I circuiti di memoria sono organizzati in unità chiamate celle di memoria. 1010 A 1011 B 1100 C 1101 D 1110 E 1111 F 16

Per identificare le singole celle di memoria ad ognuna di esse è assegnata una denominazione univoca chiamata indirizzo cella1 cella2 cella n 10111010 10111110 11111010 Poiché la memoria principale di un computer è organizzata sotto forma di singole celle dotate di indirizzo, è possibile accedere a tali celle a secondo della necessità RAM memoria ad accesso casuale. 17

Conversione dei dati RAM (Random Access Memory) usata per conservare (dopo che è stato caricato) qualsiasi tipo di dato e programma La memoria RAM è detta anche volatile, poiché perde il suo contenuto quando il computer viene spento, è detta random poiché l'accesso a ciascuna locazione di memoria è diretto e non sequenziale (come, ad esempio, nei nastri audio) ROM (Read Only Memory) è statica e non modificabile, può essere letta ma non scritta (è scritta solo all atto della fabbricazione del chip, prima che questo sia venduto). Esempio: in tutti i PC IBM-compatibili c'è una ROM che contiene il programma BIOS (Basic Input Output System) La memoria ROM è detta anche non volatile, e non perde il suo contenuto quando il computer viene spento, è generalmente usata per conservare programmi (firmware) che il computer frequentemente utilizza (per esempio le istruzioni eseguite quando il computer viene acceso,...) 18

A causa della volatilità e della dimensione limitata della memoria principale, la maggior parte dei computer è fornita di dispositivi aggiuntivi chiamati sistemi di memorie di massa, HD, CD, DVD, nastri magnetici, memorie flash. I vantaggi delle memorie di massa sono notevoli: minore volatilità.grandi capacità di memorizzazione, e possibilità di essere rimosse dalla macchina e archiviate separatamente Sistemi Magnetici: disco rotante con una sottile pellicola magnetica. Gli attuali HD montano più dischi su di un perno comune. Il disco è suddiviso in tracce e settori che vengono inizializzati con il processo della formattazione traccia settore braccio 19

Conversione dei dati Sistemi ottici (CD): Informazioni create in base a buchi creati su strato riflettente e recuperate tramite laser che ne verifica le irregolarità Le informazioni sono memorizzate su singola traccia che gira a spirale sulla superficie del disco. DVD sono dischi sulla cui superficie sono presenti più strati riflettenti Una caratteristica comune ai sistemi sia ottici che magnetici è che per recuperare i dati è necessario un movimento fisico, come la rotazione dei dischi. Ciò significa riduzione del tempo di scrittura e lettura del dato stesso Unità flash: I bit vengono memorizzati inviando segnali elettrici, dove gli elettroni vengono intrappolati in piccole celle di biossido di silicio, alterandone le caratteristiche fisiche. Nel tempo sono meno affidabili di dispositivi ottici 20

I fogli elettronici chiamati in inglese Spreadsheet: la loro dimensione è tale a coprire 16384 righe per 256 colonne suddivise in celle. Ogni cella è identificata all interno della griglia da una lettera e da un numero; la lettera indica la colonna, mentre il numero indica la riga. Caratteristica fondamentale di un foglio elettronico è che i dati inseriti possono essere facilmente gestiti; la modifica di un valore provoca l aggiornamento dei valori contenuti nelle celle collegate.

Restituisce un valore se la condizione specificata ha valore VERO e un altro valore se essa ha valore FALSO. Utilizzare la funzione SE per eseguire dei test condizionali su valori e formule. Sintassi SE(test; se_vero; se_falso) Test è un valore o un'espressione qualsiasi che può dare come risultato VERO o FALSO. E (AND) Restituisce VERO se tutti gli argomenti hanno valore VERO e restituisce FALSO se uno o più argomenti hanno valore FALSO. Sintassi E(logico1;logico2;...) Logico1; logico2;... sono da 1 a 255 condizioni da verificare che possono avere valore VERO o FALSO. Restituisce VERO se uno o più argomenti hanno valore VERO e restituisce FALSO se tutti gli argomenti hanno valore FALSO. Sintassi O(logico1;logico2;...) Logico1;logico2;... sono da 1 a 255 condizioni da verificare che possono avere valore VERO o FALSO. 22

CODIFICA DELLE IMMAGINI Suddividiamo l immagine mediante una griglia formata da righe orizzontali e verticali a distanza costante

Ogni quadratino derivante da tale suddivisione prende il nome di pixel (picture element) e può essere codificato in binario secondo la seguente convenzione: Il simbolo 0 viene utilizzato per la codifica di un pixel corrispondente ad un quadratino in cui il bianco è predominante Il simbolo 1 viene utilizzato per la codifica di un pixel corrispondente ad un quadratino in cui il nero è predominante 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 Poiché una sequenza di bit è lineare, è necessario definire convenzioni per ordinare la griglia dei pixel in una sequenza. Assumiamo che i pixel siano ordinati dal basso verso l alto e da sinistra verso destra 0000000000 0011111000 0011100000 0001000000

Non sempre il contorno della figura coincide con le linee della griglia. Quella che si ottiene nella codifica è un approssimazione della figura originaria Se riconvertiamo la sequenza di stringhe 0000000000 0011111000 0011100000 0001000000 in immagine otteniamo La rappresentazione sarà più fedele all aumentare del numero di pixel, ossia al diminuire delle dimensioni dei quadratini della griglia in cui è suddivisa l immagine

Assegnando un bit ad ogni pixel è possibile codificare solo immagini in bianco e nero Per codificare le immagini con diversi livelli di grigio oppure a colori si usa la stessa tecnica: per ogni pixel viene assegnata una sequenza di bit Per memorizzare un pixel non è più sufficiente un solo bit Per esempio, se utilizziamo quattro bit possiamo rappresentare 2 4 = 16 livelli di grigio o 16 colori diversi Mentre con otto bit ne possiamo distinguere 2 8 = 256, ecc.

Il colore può essere generato componendo 3 colori: red, green, blue (RGB) Ad ogni colore si associa una possibile sfumatura Usando 2 bit per ogni colore si possono ottenere 4 sfumature per il rosso, 4 per il blue e 4 per il verde che, combinate insieme, danno origine a 64 colori diversi Ogni pixel per essere memorizzato richiede 6 bit Usando 8 bit per ogni colore si possono ottenere: 256 sfumature per il rosso 256 per il verde e 256 per il blu che, combinate insieme, danno origine a circa 16,8 milioni di colori diversi (precisamente 16.777.216 colori) Ogni pixel per essere memorizzato richiede 3 byte

Il numero di pixel presenti sullo schermo (colonne x righe) prende il nome di risoluzione Risoluzione tipiche sono Esempio: 640 x 480 800 x 600 1024 x 768 1280 x 1024 1600 x 1200 Per distinguere 256 colori sono necessari otto bit per la codifica di ciascun pixel La codifica di un immagine di 256 colori, formata da 640 x 480 pixel, richiederà 640 x 480 = 307.200 byte (2.457.600 bit)

PIXEL da ( PICTureELement ) identifica una piccola porzione rettangolare dello schermo. Rappresenta un unitàlogica elementare di riferimento per la rappresentazione delle immagini digitali. RISOLUZIONE DPI indica le dimensioni dell immagine espresse in pixel (es. 640x480) (dots per inch-punti per pollice) è un parametro relativo che, abbinato alla risoluzione, definisce le dimensioni dell immagine in fase di acquisizione (tramite scanner) e di stampa.

Per modificare i numeri di colori, il numero di pixel sullo schermo: Start Impostazione Panello di controllo Schermo Impostazione (scheda) Rappresentazione binaria dei colori RGB un colore sul monitor è specificato da tre componenti: rosso, verde e blu l intensità di ogni colore è rappresentata da una quantità (da 0 a 255) Ogni intensità RGB è rappresentata da un byte (8 bit) l intensità più bassa è 0000 0000, la più alta è 1111 1111

Le immagini codificate pixel per pixel sono dette immagini in grafica bitmap Le immagini bitmap occupano parecchio spazio Per esempio, l immagine della finestra Proprietà - Schermo sulla diapositiva precedente (in cui 3 byte sono usati per i colori) richiede 493.674 byte (circa 482 KB) Esistono delle tecniche di compressione che permettono di ridurre le dimensioni Ad esempio, se più punti vicini di un immagine assumono lo stesso colore, si può memorizzare la codifica del colore una sola volta e poi ricordare per quante volte deve essere ripetuta

I formati come GIF, JPEG e PNG sono formati compressi Per esempio: rispetto al bitmap, il formato JPEG dedica meno bit alla descrizione delle sfumatura cromatiche di un immagine L immagine della finestra Proprietà - Schermo in formato JPEG si occupa 30.401 byte (circa 29,6 KB) Postscript e PDF per i documenti

Distinzione tra compressione lossless e compressione lossy Lossless: compressione senza perdita di informazioni Dalla versione compressa, si può ricostruire perfettamente la versione non-compressa Per esempio, GIF (fino a 256 colori) Lossy: compressione con perdita di informazioni Dalla versione compressa, non è possibile recuperare la versione originale Per esempio, JPEG, PNG Un algoritmo di compressione lossless potrebbe essere "cifra-numero di ripetizioni". È chiaro che i dati non sono più direttamente disponibili ma occorre svolgere un passaggio intermedio (decompressione).

Finché si resta al di sotto di una ben determinata soglia, le perdite introdotte risultano essere pressoché nulle per l utente medio Mano a mano che si aumenta il fattore di compressione, la codifica lascia passare solo frequenze spaziali basse dando luogo ad ampie chiazze monocolore Aumentando il fattore di compressione risulta anche evidente la sovrastruttura a blocchi applicata all immagine Immagine.bmp Immagine.jpg

Pressione del suono Fisicamente un suono è rappresentato come un onda che descrive la variazione della pressione dell aria nel tempo (onda sonora) Tempo Sull asse delle ascisse viene rappresentato il tempo e sull asse delle ordinate viene rappresentata la variazione di pressione corrispondente al suono stesso

Un idea chiave: il suono è continuo (la pressione varia senza salti) È possibile ottenere una registrazione analogica continua dell onda Una registrazione analogica memorizza ogni variazione dell onda originale (almeno in linea di principio) La rappresentazione digitale di un suono funziona in un modo diverso

Pressione del suono Si effettuano dei campionamenti sull onda (cioè si misura il valore dell onda a intervalli di tempo costanti) e si codificano in forma digitale le informazione estratte da tali campionamenti Tempo Quanto più frequentemente il valore di intensità dell onda viene campionato, tanto più precisa sarà la sua rappresentazione Il numero di campioni raccolti per ogni secondo definisce la frequenza di campionamento che si misura in Hertz (Hz, numero di campionamento ogni secondo)

Pressione del suono CODIFICA DEI SUONI La sequenza dei valori numerici ottenuti dai campioni può essere facilmente codificata con sequenze di bit Un approssimazione! Tempo La rappresentazione è tanto più precisa quanto maggiore è il numero di bit utilizzati per codificare l informazione estratta in fase di campionamento

Codifiche standard MP3, WAV (MS-Windows), AIFF (Audio Interchange File Format, Apple), MIDI MP3 MPEG-3: variante MPEG per suoni Grande diffusione, molto efficiente (fattore di compressione circa 10:1) MIDI: codifica le note e gli strumenti che devono eseguirle Efficiente, ma solo musica, non voce

Condizione per la conversione A/D Il teorema di Shannon (o di Nyquist) fornisce la condizione necessaria affinché un segnale dopo il campionamento possa nuovamente essere ritrasformato in analogico, tramite un convertitore D/A riottenendo il segnale di partenza. Teorema: la frequenza di campionamento di un segnale deve essere f c 2 f max dove f max rappresenta la frequenza massima contenuta nel segnale, ed è anche conosciuta come frequenza di Nyquist, mentre f c è la frequenza di campionamento. Analogico: segnale continuo nel tempo Digitale: segnale discreto nel tempo costituito da 0 e 1 43

Il campionamento è un passo del processo di conversione analogico digitale di un segnale. Consiste nel prelievo di campioni (samples) da un segnale analogico e continuo nel tempo ogni Dt secondi. Dt è l'intervallo di campionamento, mentre Dt= 1/Fs è la frequenza di campionamento. Il risultato è un segnale analogico in tempo discreto. Tale segnale sarà in seguito quantizzato, codificato e quindi reso accessibile a qualsiasi elaboratore digitale. Segnale Analogico Segnale Campionato 44

ARCHITETTURA DEI COMPUTER In un Computer la circuiteria che esegue operazione sui dati è denominata CPU (Central Process Unit) o più semplicemente processore. L architettura che si utilizza ancora oggi come schema è quella di Von Neumann (1945) progettista e inventore del primo calcolatore ad utilizzare la memoria al posto di cavi elettrici Unità di Input CPU Unità di Output Memoria Principale

ARCHITETTURA DEI COMPUTER In quest'immagine di una scheda madre si notano a destra il Socket della CPU, allogio della RAM e sparsi qua e là alcuni condensatori elettrolitici, transistor, resistenze, e slot PCI Memorie RAM. Dall'alto: DIP, SIPP, SIMM (30 pin), SIMM (72 pin), DIMM (168 pin), DDR DIMM (184 pin)

ARCHITETTURA DEI COMPUTER Una memoria centrale, supporto in grado di registrare le singole istruzioni di un programma e i dati sui quali operare. Una unità centrale di elaborazione, insieme di circuiti elettronici, in grado di effettuare le operazioni richieste dal programma e di prendere decisioni sulla base dei risultati ottenuti; l'unità centrale di elaborazione deve, inoltre,provvedere alle operazioni di trasferimento tra la memoria centrale e le unità periferiche, governando lo smistamento dei dati di ingresso e uscita dalla memoria centrale. Le unità periferiche, di input e di output, unità in grado di svolgere funzioni di comunicazione tra l'ambiente esterno e l'elaboratore, come l'inserimento nel sistema del programma e dei dati e l'uscita dei risultati.

ARCHITETTURA DEI COMPUTER La CPU è suddivisa in due grandi unità, ALU, CU ALU: esegue l elaborazione dei dati: somma, sottrazione,etc CU: contiene i circuiti necessari per coordinare le attività della macchina. memoria INPUT OUTPUT ALU Unità aritmetico logica Unità di controllo bus

ARCHITETTURA DEI COMPUTER Per la memorizzazione temporanea delle informazioni, la CPU contiene delle cellette di memorie dette registri che svolgono dei compiti particolari Il trasferimento dei dati avviene tramite dei collegamenti detti bus Vediamo come una semplice operazione di addizione viene svolta : 1) Prendi dalla memoria uno dei valori e ponilo nel registro 1 2) Prendi dalla memoria il secondo valore e ponilo nel registro 2 3) Attiva la ALU e addiziona i numeri 4) Trasferisci ad un altro registro il risultato 5) Stop

ARCHITETTURA DEI COMPUTER ALU Unità aritmetico logica Unità di controllo Contatore di Programma Registro della Istruzioni Un Computer esegue un programma caricato nella sua memoria copiando le istruzioni nella Unità di controllo Una volta nell unità di controllo, ogni istruzione è poi decodificata ed eseguita nell ordine esatto con cui sono prelevate dalla memoria

ARCHITETTURA DEI COMPUTER Durante la fase di reperimento l unità di controllo richiede che la memoria principale fornisca l istruzione memorizzata all indirizzo indicato nel contatore di programma. L Unità di controllo pone l istruzione ricevuta nel registro delle istruzioni, e poi incrementa il contatore di programma di una unità. L Unità di controllo decodifica l istruzione ed attiva la circuiteria adeguata alla esecuzione dell istruzione stessa. Unità di controllo Memoria principale A0 PC Ind. A0 156C A1 156C IR An

ARCHITETTURA DEI COMPUTER Due registri Speciali: Program Counter: Esso contiene l indirizzo dell istruzione successiva che deve essere eseguita, e quindi serve al computer per tenere traccia della posizione in cui si trova nel programma Instruction Register: Esso contiene l istruzione da eseguire Fetch: reperimento decode: decodifica L Unità di controllo svolge il suo compito ripetendo continuamente il ciclo macchina: un processo a tre fasi. execute: esegue

Ciclo-Fetch-Decode-Execute 1. Prendi istruzione corrente e mettila nel registro istruzioni IR (fetch) 2. Incrementa il Program Counter (PC) in modo che contenga l indirizzo dell istruzione successiva 3. Determina il tipo di istruzione da eseguire (decode) 4. Se l istruzione necessita di un dato in memoria, determina dove si trova e caricalo in un registro della CPU 5. Esegui l istruzione (execute) 6. Torna al punto 1 e opera sull istruzione successiva

ARCHITETTURA DEI COMPUTER Le attività della macchina vengono controllate da un circuito (clock) chiamato anche oscillatore, che genera impulsi usati per coordinare l attività della macchina: Più velocemente il circuito oscillante genera impulsi, più rapidamente il computer esegue il suo ciclo macchina. Tale frequenza è misurata in Hz (GHz) La comunicazione tra un computer principale ed altri dispositivi I/O sono gestiti tramite il controller. Tali dispositivi sono dei piccoli computer che coordinano le attività tra CPU centrale e dispositivo hardware esterno. Mon. DVD Print Cont Cont Cont CPU Memoria

ARCHITETTURA DEI COMPUTER L insieme delle istruzioni che una CPU deve saper eseguire è molto limitato Esempio di istruzioni macchina della CPU sono STORE, AND, JUMP, POP, PUSH, SHIFT. CPU tipo RISC (Reduced Instruction Set Computer G4 e G5 della Apple CPU tipo CISC (Complex Instruction Set Computer Processori Pentium

Parallelismo La frequenza di clock, influenza direttamente il tempo di ciclo e quindi le prestazioni di un computer Pertanto è limitata alla tecnologia esistente Il parallelismo permette di migliorare le prestazioni di una macchina senza modificare la frequenza di clock. Due tipi di parallelismo: 1.Parallelismo delle istruzioni (nella programmazione) 2.Parallelismo del processore

Start Inserisci a,b,c D=b 2-4ac diagramma di Flusso Eq. 2 Grado ax 2 +bx+c=0 no D >=0 si x 1 =(-b+i sqrt(-d))/2a x 2 =(-b-i sqrt(-d))/2a no D=0 si x 1 =x 2 = -b/2a x 1 =(-b+sqrt(d))/2a x 2 =(-b-sqrt(d))/2a Stampa x 1,x 2 End