









Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Materiale completo di slide e appunti
Tipologia: Dispense
1 / 16
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!










L’informatica è lo studio sistematico degli algoritmi che descrivono e trasformano l’informazione: la loro teoria, analisi, progetto, efficienza, realizzazioni e applicazioni, o più semplicemente: la scienza della rappresentazione e dell’elaborazione dell’informazione. (= definizione dell’association for computing machinery ACM). Il termine deriva da quello francese "informatique", contrazione di informat(ion) (automat)ique, coniato da Philippe Dreyfus nel 1962. Il primo utilizzo italiano risale al
L’antenato del computer è l’abaco (2000 a.C.): strumento di calcolo formato da un telaietto su cui scorrono alcune file di palline che denotano le unità, le decine, le centinaia, le migliaia. Il funzionamento si basa sempre sul principio fondamentale di ogni sistema di numerazione posizionale, cioè che il valore di una cifra dipende dal posto che occupa. Le operazioni possibili non sono soltanto addizioni e sottrazioni, ma anche moltiplicazioni e divisioni, viste rispettivamente come addizioni e sottrazioni ripetute Al noto filosofo francese Blaise Pascal viene riconosciuto il merito di aver costruito la cosiddetta “Pascalina”, la prima macchina calcolatrice. Funzionava con le ruote dentate e poteva eseguire solo le addizioni. Nel 1671 Leibniz perfezionò la Pascalina introducendo un meccanismo basato su una particolare ruota dentata. Ciò consentì alla macchina di Leibniz di eseguire anche le moltiplicazioni. A Leibniz si deve l’invenzione del sistema binario. Il matematico inglese Charles Babbage può essere considerato il padre dei calcolatori digitali moderni: il progetto di Babbage prevede una macchina con una unità aritmetica di 50 cifre decimali, una memoria interna costituita da 1000 registri da 50 cifre, e un meccanismo di controllo a schede perforate, ripreso dal telaio tessile inventato dal francese Jacquard nel 1801. Ada Byron, figlia del poeta Lord Byron, incontrò Babbage a 17 anni e iniziò a collaborare con lui alla macchina analitica. Tra i suoi appunti venne trovato il primo modello di computer programmabile, ed un algoritmo per generare i numeri di Bernoulli, scritto per essere eseguito dalla macchina. Per questo è ricordata come la prima programmatrice al mondo. Verso la fine del 1800 , negli Stati Uniti si presentò un problema molto concreto e urgente: l'elaborazione dei dati del censimento americano del 1890. Uno studioso di statistica, Herman Hollerith adattò la scheda perforata a questo scopo, registrando su ogni scheda i dati di un cittadino e realizzando una macchina in grado di contarli. La società fondata da Hollerith si chiamò, e si chiama tuttora, IBM (International Business Machine). Il primo grande computer elettromeccanico è quello di Howard Aiken, che nel 1937, ad Harvard (USA), insieme ad IBM, riprende in esame i lavori di Babbage e cerca di utilizzare i relè per realizzare un computer del tipo di quello di Babbage. Esso prende il nome di MARK 1 ed era capace di 3 operazioni al secondo. L’ENIAC, acronimo di Electronic Numerical Integrator and Computer, è stato considerato per molto tempo il primo calcolatore elettronico mai realizzato. Fu progettato durante la seconda guerra mondiale per calcolare le traiettorie. Le sue dimensioni erano impressionanti: occupava una sala calcolo di 167 m2, effettuava 5.000 addizioni al secondo ed aveva una memoria di 200 byte. L'UNIVAC fu il primo calcolatore elettronico in grado di conservare il programma all'interno della memoria (grazie ad un'importante innovazione dovuta al matematico
Il computer è uno strumento in grado di eseguire velocemente in sequenza insiemi di azioni elementari (“operazioni”). Le operazioni vengono eseguite su oggetti (dati) per produrre altri oggetti (risultati). L’esecuzione di operazioni viene richiesta all’elaboratore attraverso frasi (istruzioni) scritte in un linguaggio di programmazione.
Un programma per computer indica al computer la sequenza di passi necessari per completare un compito specifico. Il programma consiste in un numero molto elevato di istruzioni primitive (semplici). I computer possono svolgere un’ampia gamma di compiti perché possono eseguire programmi diversi. Ogni programma è progettato per indirizzare il computer a lavorare su un compito specifico. La programmazione è l’azione di progettare, implementare e testare programmi per computer.
L’ hardware è costituito dagli elementi fisici di un sistema informatico. Alcuni esempi molto visibili sono il monitor, il mouse, la memoria esterna e la tastiera. In particolare, sono elementi dell’hardware:
La CPU è composta da due componenti: l’unità di controllo e l’unità logico aritmetica:
Dati e operazioni vengono codificati tramite sequenze di bit (Binary digit). La CPU è in grado di operare soltanto in aritmetica binaria, effettuando operazioni elementari: somma e differenza, scorrimento (shift). Lavorando direttamente sull’hardware, l’utente è forzato a esprimere i propri comandi al livello della macchina, tramite sequenze di bit, cioè il Linguaggio macchina.
Esistono due tipi di archiviazione:
Un kilobyte, KB, è pari a 1024 byte. (si lavora in potenze di due) Un megabyte, MB è pari a circa 1 milione di byte. Un gigabyte, GB, è pari a circa 1 miliardo di byte. Pensiamo per un attimo alla velocita connessione di rete Internet odierna (4G/5G velocità di byte trasmessi al secondo). Esecuzione di un programma Le istruzioni del programma e i dati (come testo, numeri, audio o video) sono memorizzati in formato digitale. Quando un programma viene avviato, viene portato in memoria primaria, dove la CPU può leggerlo. La CPU esegue il programma un’istruzione alla volta. Il programma può reagire agli input dell’utente. Le istruzioni e gli input dell’utente guidano l’esecuzione del programma. La CPU legge i dati (compreso l’input dell’utente), li modifica e li riscrive in memoria, sullo schermo o sulla memoria secondaria.
Il software è tipicamente realizzato come programma applicativo (es. Microsoft word, computer games, sistemi operativi, driver dei dispositivi). Il software è una sequenza di istruzioni e decisioni implementate in un linguaggio e tradotte in una forma che può
Sono esempi: tastiera e mouse, video e stampante, scanner e tavoletta grafica, dispositivi di memoria di massa. Interfacce Le interfacce sono dispositivi che consentono all’elaboratore di comunicare con le periferiche. Sono molto diverse tra loro e dipendono dal tipo di unità periferica da connettere.
Le memorie di massa sono dispositivi in grado di conservare al loro interno grandi quantità di informazioni, in modo persistente (le informazioni non si perdono spegnendo il computer) e con un accesso in lettura e scrittura meno rapido della RAM (nell’ordine dei millisecondi). Esempi:
flash proprio perché l’alta tensione usata per cancellarle era paragonata a un flash. o L’ hard disk a stato solido (SSD) è un dispositivo di massa senza parti meccaniche, è basato su memorie flash (circuiti elettronici a stato solido), ha una velocità di accesso e trasferimento dati molto elevata, non presenta tempo di seek o latenza rotazionale, è silenzioso, resistente a urti e vibrazioni, e ha un consumo energetico ridotto.
Il cloud storage è un modello di conservazione dati su computer in rete dove i dati stessi sono memorizzati su molteplici server virtuali generalmente ospitati presso strutture di terze parti o su server dedicati. Il cloud storage (che tradotto dall’inglese sta per “archiviazione cloud”) è un metodo di conservazione dei dati personali su server presenti in rete e accessibili tramite connessione internet. Il cloud (es. Onedrive) offre quindi uno spazio virtuale, ossia una sorta di disco fisso (hard-disk) sempre connesso e accessibile, sul quale è possibile salvare qualsiasi tipo di cartella o file. Ciò comporta il vantaggio di potervi accedere in un secondo momento da un altro computer, da smartphone o da altri dispositivi compatibili. (es. spazio/velocità = tempo cioè dimensione video 5 Gigabite / 1 Gigabyte per secondo = 5 secondi )
La memoria primaria presenta dimensioni relativamente limitate, consente un accesso molto rapido ed è realizzata con tecnologia a semiconduttore. È composta da:
Ciascuna cella di memoria ha un indirizzo (scritto in valori del sistema binario), che equivale alla sua posizione relativa rispetto alla prima cella di memoria (con indirizzo 0). L’indirizzamento è l’attività con cui l’elaboratore seleziona una particolare cella di memoria. Per farlo, l’elaboratore pone l’indirizzo della cella desiderata nel Registro Indirizzi (RI) della CPU:
Scrittura (write): il contenuto del Registro Dati è copiato nella cella di memoria indirizzata dal Registro indirizzi. Fasi dell’operazione di lettura e uso del Bus:
Esempio: Considerazioni: Sebbene la RAM sia veloce, non è abbastanza veloce da “star dietro” ai moderni processori. Il processore perde tempo ad aspettare l’arrivo dei dati dalla RAM. La soluzione è inserire tra processore e RAM una memoria particolarmente veloce dove tenere i dati usati più spesso ( memoria cache ). Memoria cache La prima volta che il processore carica dei dati dalla memoria centrale, tali dati vengono caricati anche sulla cache. Le volte successive, i dati possono essere letti dalla cache (veloce) invece che dalla memoria centrale (più lenta) in base al principio di località di dati e istruzioni. Le cache sono realizzate con tecnologie più performanti rispetto alla RAM, costano molto di più per bit e richiederebbero spazi maggiori sul chip se usate su larga scala. La cache di primo livello è integrata nel processore. La cache di secondo livello può essere interna o esterna al processore. In alcuni sistemi esiste anche la cache di terzo livello. La CPU accede prima alla cache, poi alla RAM solo se necessario (principio di località).
L’ ALU (Arithmetic Logic Unit) è il componente della CPU che esegue operazioni aritmetiche, logiche e confronti, utilizzando i dati contenuti nella memoria centrale o nei registri interni alla CPU. L’ALU lavora in stretta collaborazione con i registri della CPU e con l’unità di controllo, che coordina quali operazioni eseguire e quando eseguirle. Esempio di una somma tra due numeri:
L’ unità di controllo coordina il funzionamento di tutto il sistema CPU, organizzando l’esecuzione delle istruzioni all’interno del processore. Svolge alcune funzioni principali:
o Accesso remoto tramite internet o reti private o Ottimizzazione dei costi e risorse condivise o Potenza di calcolo notevole Molti modelli di intelligenza artificiale vengono eseguiti nel cloud. Applicazioni pratiche in AI: