




























































































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
appunti sostitutivi a slide e dispense
Tipologia: Appunti
1 / 113
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!





























































































INFORMAZIONI generali
1. DOMANDA di fondo essenziale per comprendere QUAL È L’UTILITA’ DI UN CORSO DI INFORMATICA E STATISTICA all’interno del percorso di psicologia?
Trovandoci all’interno di un percorso di studi di psicologia, la prima domanda che sorge spontanea di fronte alla frequentazione di un corso come “Informatica e Statistica” è : Qual è l’utilità di questo esame all’interno del nostro percorso di studi? Perché uno studente di psicologia dovrebbe interessarsi/dovrebbe essere formato anche sull’informatica e la statistica?
Le ragioni sono differenti , più o meno specifiche; Esse riguardano sia l’informatica che la statistica:
Proprio alla luce di questo uso frequente/onnipresente, è invece giusto entrare nell’ottica che ciascuno di noi dovrebbe avere almeno una conoscenza di base/generica di quetsi devices/fonti.
Seppure questa affermazione potrebbe suonare esagerata ad alcuni di noi, convinti del fatto che, essendo che la tecnologia è il nostro pane quotidiano, non possiamo che conoscerla, è sufficiente sottoporci ad alcuni quesiti di base sull’informatica per capire quanto sia lacunosa la nostra conoscenza.
Facciamo un ESEMPIO: data la seguente domanda, proviamo a fornire la risposta che ci sembra corretta:
La risposta giusta è : nei propri archivi → di fatto, dobbiamo immaginare il motore di ricerca come un’enorme cassettiera, organizzata in modo tale che ogni cassetto contenga delle informazioni specifiche, suddivise con un certo criterio. Dunque, la facilità/velocità con cui il motore trova una risposta alle nostre domande, si deve al fatto che il motore di ricerca conosce i suoi cassetti, e dunque impiega pochissimo tempo per estrarre da uno di essi la risposta corretta, sapendo già dove questa si trova. (al contrario, se il motore di ricerca fosse costretto a cercare una possibile risposta all’interno di tutto il web, i tempi di attesa per noi sarebbero decisamente lunghi, essendo che si ritroverebbe a cercare una risposta per noi all’interno di un ammasso infinito di informazioni di cui non conosce l’ordine/disposizione/posizione)
→ informatica e statistica è di fatto propedeutica per psicometria
Esempio pratico: se misuriamo altezza delle persone in aula, quale delle 3 forme potrebbe assumere il grafico ipoteticamente? Sapendo che esiste una norma di altezza per gli adulti italiani, io mi aspetto che ci saranno in aula poche persone che hanno una altezza più bassa di tale norma)(non mi aspetto dunque una forma del primo tipo → quella forma me la aspetterei con una classe di tutti molto alti)
ATTENZIONE : tutto ciò ci aiuta a dire che parleremo di statistica DESCRITTIVA : si tratta di quella tipologia di statistica che, utile, appunto, per descrivere i dati, ci aiuta/guida nella lettura dei dati che abbiamo a disposizione, agevolandola (Vedremo dunque come si effettuano le indagini campionarie, come si raccolgono i dati, come vengono fatte le sintesi…)
2. OBIETTIVI del corso
Alla luce di ciò finora descritto, possiamo dunque estrapolare/riassumere quali possono essere i principali obiettivi che si vuole raggiungere tramite la frequentazione del corso:
o l’indagine empirica o le variabili e la loro misura o i test psicologici
o il campionamento o la raccolta dei dati o le misure di tendenza centrale o le misure di dispersione
3. BREVE PANORAMICA degli argomenti
o dato e informazione o trattamento automatico dei dati o hardware e software o l’architettura del calcolatore
o definizione di algoritmo o dall’algoritmo al programma o software applicativi o sistemi operativi o software maligni
o cos’è una rete o cos’è Internet o i servizi di Internet
o ipertestualità e multimedialità o da ipertesti e contenuti multimediali al World Wide Web o i motori di ricerca o il Web 2.
Analizzando l’etimologia e comprendendo il vero significato dell’informatica, possiamo dunque comprendere il motivo per cui essa oggi viene inevitabilmente associata con i computer/in generale con gli elaboratori automatici →il computer/elaboratore automatico è lo strumento che traduce/mette in pratica lo studio/soluzione che l’informatico compie solo a livello teorico →il computer è lo strumento di analisi informatizzata
ATTENZIONE : ciò non significa che l’informatico non sarebbe in grado di svolgere il lavoro che assegna al computer; semplicemente, affidare la messa in pratica del compito/soluzione teorica all’elaboratore automatico porta con sé dei vantaggi:
Dunque, IN DEFINITIVA: informatica= informazione + automatica (informatique= information + automatique) Per cui l’informatica corrisponde alla progettazione e costruzione di elaboratori, cioè macchine in grado di trattare/elaborare in modo automatico l’informazione che viene loro ceduta
QUINDI: compreso che esiste un legame conseguente tra informatica e computer, nel senso di scienza della computazione, si è giunti così alla coniazione del termine “COMPUTER SCIENCE ” come sorta di sinonimo di informatica, visto che il calcolatore/elaboratore/computer è lo strumento che permette di trattare l’informazione (studiata dall’informatico)
o L’informatica viene anche chiamata tecnologia dell’informazione ( information technology ) o Con l’avvento delle reti e delle telecomunicazioni è nata una nuova disciplina chiamata Information & Communication Technology
da qui in poi è dunque bene specificare che: ELABORATORE, CALCOLATORE E COMPUTER sono impiegabili come SINONIMI
2. Dal DATO, all’INFORMAZIONE, alla CONOSCENZA
Essendo la prima parte dedicata alla trattazione delle basi/fondamenti dell’informatica, dobbiamo in prima battuta senza dubbio parlare del DATO. Di fatto, tutta l’informatica ruota attorno al dato: tutto ciò che avviene in informatica, dalla codifica, all’elaborazione, alla memorizzazione ecc. si costruisce a partire dal cosiddetto DATO
DUNQUE: Cosa è un dato? Con dato s’intende un insieme di simboli , i quali appartengono ad un determinato alfabeto
Esempio: il numero 39 , 5 è composto dai simboli “3” “9” “,” “5”, i quali fano parte dell’alfabeto numerico
Eppure, affinché il dato possa venire letto e compreso dall’elaboratore (allo scopo, appunto, di essere elaborato), è necessario che il dato nudo e crudo venga trasformato in INFORMAZIONE.
DUNQUE: come si passa da un dato all’informazione? Quale passaggio è richiesto perché ciò avvenga? L’informazione si ottiene relazionando il dato con delle proprietà
Esempio: 39,5 = è La temperatura corporea di un individuo, misurata in 39,5 °C Pe cui= il dato è 39,5// la proprietà è la temperatura corporea di un certo individuo
3. DALL’INFORMAZIONE alla CONOSCENZA – la necessità di implementare la conoscenza della macchina elaboratrice Supponiamo ora di avere a disposizione questa informazione: che la temperatura di un certo individuo in aula è di 39,5. Noi, in quanto esseri umani, di fronte a questo dato diremmo che la temperatura è alta; inoltre, per evitare spiacevoli conseguenze, consiglieremmo all’individuo in questione di farsi visitare… Ma perché diciamo queste cose? Come facciamo ad affermare ciò? Perché siamo INTELLIGENTI , un’intelligenza che, in questo caso, è specialmente fonte di CONOSCENZA : conoscendo il fatto che, essendo la temperatura media di individuo circa 37 gradi, qualora ci venga assegnato il dato di una temperatura che supera questo, sappiamo che qualcosa non va, che probabilmente un virus è in circolo ed è necessario curarsi; conosciamo inoltre il fatto che, qualora la temperatura si spinga sopra i 39 gradi, è forse il caso di allarmarsi, perché si tratta di un numero troppo alto.
AL CONTRARIO DI NOI UMANI, dotati di una conoscenza/intelligenza propria, acquisita con l’esperienza, la macchina, di fronte alla semplice informazione “la temperatura corporea di un individuo è di 38,5 gradi” non farà nulla. non fa nulla; Questo perché, a differenza nostra, la macchina in questione non è dotata della conoscenza necessaria per leggere ed elaborare correttamente questo dato.
Tale esempio ci permette dunque di comprendere che, affinché il compito di elaborazione di informazioni che affidiamo alla macchina riesca, è necessario fornire alla macchina la giusta CONOSCENZA → necessità di implementare la conoscenza della macchina)
Ma come si può fare ciò? Ad esempio, come può la macchina essere in grado di dirci cosa afre di fronte all’informazione “temperatura corporea di 39,5 gradi”? Bisogna stabilire dei parametri/regole , che la macchina, una volta apprese, potrà applicare sul dato, ed elaborarlo di conseguenza:
Esempio: supponiamo che il dato che vogliamo elaborare è la temperatura dell’essere umano → che regole dobbiamo definire?
se vogliamo che il dato/informazione venga elaborato dalla macchina in modo automatico, senza che l’uomo debba intervenire per trattare il dato/mettere a terra in maniera pratica la risoluzione, è necessario implementare la conoscenza della macchina, che altro non significa se non che prendere in considerazione tutti i casi possibili che potrebbero riguardare quel determinato dato, e stabilire tutte le regole/parametri necessari, affinché questo dato venga letto al meglio, e dunque anche la risposta/soluzione che la macchina fornisce sia coerente
Capiamo dunque che, realizzare una macchina in grado di elaborare automaticamente e correttamente, rappresenta un percorso molto complesso e delicato.
QUANDO LA CONOSCENZA NON VIENE IMPLEMENATTA NELLA MACCHINA IN MANIERA SUFFICIENTE, cosa accade? Seppure l’esempio fatto sia tutto sommato abbastanza banale, dobbiamo pensare che una lettura errata del dato, dato da una mancanza di conoscenza (cioè da regole/parametri stabiliti non in maniera chiara, sufficiente od esaustiva, possono portare a casi di incidenti più grandi, che possono sfociare anche in questioni etiche/psicologiche
Esempio : chatgpt, fino a poco tempo fa, era stato testato, dimostrando di non essere in grado di discernere tra un gorilla ed una persona di colore → ciò avveniva perché la conoscenza non era stata implementata correttamente; alla macchina non erano state date sufficientemente regole per distinguere tra una persona nera e gorilla → con il conseguente problema del possibile aumento di pregiudizi, discriminazioni…) (ritorniamo al fatto che è necessario capire come funziona un sistema, perché il suo problema nasce dalla base)
linguaggi FORMALI , composti appunto da segni formali, la cui principale caratteristica è quella di attribuire UN SOLO ED UNICO SIGNIFICATO ai simboli impiegati, così da evitare di incombere in ambiguità date da possibili interpretazioni differenti di uno stesso simbolo/stringa di simboli.
I linguaggi formali sono dunque composti da:
È necessario sapere che, con il trascorrere degli anni e l’evoluzione della tecnologia, sono stati di fatto introdotti altri e più sofisticati sistemi di elaborazione, che sono ormai in grado di riconoscere il linguaggio naturale →si tratta del cosiddetto processamento del linguaggio naturale → è bene sottolineare che, l’idea che il calcolatore sia in grado di processare e comprendere il nostro linguaggio naturale, rappresenta a tutti gli effetti un’ILLUSIONE → è di fatto impossibile che la macchina, in quanto tale, per la sua stessa struttura, sia in grado di comprendere il nostro linguaggio naturale → infatti, anche se potrebbe sembrare esattamente il contrario, i computer non comprendono le parole e i numeri nel modo in cui li comprendiamo noi. I moderni software sono piuttosto bravi a farci credere il contrario, ma al livello più basso nel computer (così come nello smartphone o in qualunque altro dispositivo elettronico) tutto è rappresentato da un segnale elettrico binario che può "esistere" solo in due stati fisici ben definiti: acceso (nel caso si registri un passaggio di corrente elettrica) o spento (se non si registra il passaggio di corrente elettrica) → vedi dopo “codice binario”
Per tale ragione dobbiamo stare attenti a questo tipo di intelligenze: esempio eclatante: l’uso di chatgpt come psicologo personale: siamo sicuri che possa effettivamente sostituire il professionista? Partendo dal presupposto che, di fatto, l’idea che la macchina ci possa comprendere è un’illusione già al livello basilare del linguaggio incompatibile?
4. I COMPITI di base del computer:
codifica, elaborazione, decodifica
Chiariti gli elementi di base (dato, informazione, conoscenza e linguaggio), vediamo come questi si combinano/vengono trattati all’interno dei compiti principali che il computer svolge, e cioè: codifica, elaborazione e decodifica dei dati. Diamo di seguito una panoramica generica per comprendere cosa ciascuno di essi rappresenta, per poi approfondirli in modo più specifico:
DUNQUE, in altre parole: si tratta della conversione del dato/informazione dal linguaggio naturale al linguaggio formale (es: codice binario)
Esempio di codifica: Se vuoi inviare un messaggio di testo via e-mail, la codifica è quel passaggio che permette di convertire i caratteri del messaggio (scritto da noi umani in codice naturale), in una sequenza di bit che il computer/posta elettronica può comprendere, e dunque memorizzare, e dunque poi trasmettere al giusto mittente
codifica e decodifica sono i due lati di una medaglia, mentre l'elaborazione è il processo che avviene tra i due. La codifica prepara i dati per la manipolazione, l'elaborazione li manipola, e la decodifica riporta i dati nel loro formato originale
4a. La CODIFICA dell’informazione e il CODICE BINARIO
1. COSA È LA CODIFICA – il passaggio da linguaggio naturale a codice binario Abbiamo detto che la codifica è l'operazione con cui l'informazione viene trascritta in un formato digitale , cioè in un formato che il computer può essere in grado di: leggere/comprendere, interpretare e memorizzare. in altre parole: si tratta della conversione del dato/informazione dal linguaggio naturale/umano al linguaggio formale (es: codice binario)
In particolare, il computer preleva le informaizoni che gli giungono in linguaggio naturale per “tradurle” in un linguaggio formale, solitamente rappresentato dal cosiddetto CODICE BIARIO. Di seguito, vediamo dunque di meglio comprendere tale linguaggio; quali sono i suoi simboli, come funziona…
2. Il codice binario e i BIT Il codice binario è il linguaggio FORMALE per eccellenza impiegato dai calcolatori. I simboli che costituiscono tale linguaggio, e che dunque stanno alla base di tutta la comunicazione/compiti svolti dal computer, sono i cosiddetti BIT
QUINDI: Nei calcolatori l’informazione è codificata in bit (binary digit) → i calcolatori parlano questa lingua
3. Cos’è un SISTEMA BINARIO – 2 cifre: 0 e 1 Quando si parla di sistema binario ci si riferisce a un sistema numerico in base 2. Detto in altro modo: significa che si tratta di un sistema composto solo da due cifre ; tali cifre, convenzionalmente, sono rappresentate da 0 e 1.
Perché si sono assunti convenzionalmente lo 0 e l’1? Nel linguaggio informatico, tali numeri hanno una corrispondenza con la struttura/stato fisico del computer stesso, il quale può avere solo due modalità: acceso e spento (dei transistor che compongono i vari chip) → per approfondire: vedi sotto “perché i computer usano proprio il sistema binario”
4. Come FUNZIONA il sistema binario Sistema binario vs sistema decimale Per meglio comprendere il sistema binario e il suo funzionamento, è bene ricordare che, parlando di numeri, la maggior parte degli esseri umani è abituata all’uso del sistema decimale, cioè un sistema numerico a base 10. Il nostro sistema numerico, infatti, si compone di dieci cifre (convenzionalmente 0, 1, 2, 3, 4, 5, 6, 7, 8 e 9), e usa le loro combinazioni per formare tutti i numeri immaginabili.
Ciò si lega direttamente anche al fatto che, per i pionieri dell'informatica (come Von Neumann o Alan Turing) era molto più facile e sensato distinguere sommariamente tra "Acceso" e "Spento" (ovvero "0" e "1" in ambito binario), anziché tra dieci intensità di corrente differenti tra loro (una misurazione praticamente impossibile con gli strumenti dell'epoca). Questo ha portato i computer a rappresentare cifre e lettere tramite la combinazione di diversi stati binari generati dal passaggio (o dall'interruzione) di corrente elettrica attraverso un transistor (ovvero una cella di memoria).
*FOCUS: cosa sono i transitor? I transistor che compongono i chip di un computer, spesso e volentieri chiamati porte o gates , dal momento che si aprono o chiudono per consentire o impedire il passaggio del flusso di elettroni) prendono due input e li combinano insieme, così da ottenere un altro input da "consegnare" al transistor successivo.
7. il sistema binario OGGI e altri tentativi Nonostante siano passati ormai diversi decenni, anche i computer e gli smartphone odierni utilizzano questo stesso sistema, basato matematica binaria, per eseguire le istruzioni di qualunque software, dal più semplice al più complesso.
EPPURE: ingegneri e scienziati a cercare strade alternative che permettessero di continuare a migliorare costantemente le performance dei processori. Una di queste strade ha portato allo sviluppo – sperimentale, al momento – di informatiche non binarie. L'informatica quantistica e quella fotonica ne sono due esempi.
INOLTRE: Alcune ricerche d'avanguardia hanno dimostrato che è possibile, modulando opportunamente l'intensità di alcuni fasci laser che interagiscono con celle di memoria costituite da un particolare materiale in grado di modificare la sua struttura molecolare (passando da amorfa a cristallina), modificare anche solo in parte la struttura molecolare delle varie celle. In questo modo si è riusciti ad ottenere, oltre al classico "1" e "0" (rispettivamente 100% cella cristallina, 100% cella amorfa), anche alcuni valori intermedi (ad esempio 50% amorfo e 50% cristallino). Questo ha reso possibile, nel corso dei primi esperimenti, archiviare i dati in otto differenti combinazioni per ogni singola cella.
4b. La CODIFICA dell’informazione e la MEMORIA
Abbiamo detto che la codifica è l'operazione con cui l'informazione viene trascritta sul supporto in un formato digitale adatto; per cui, il tema della codifica si lega inevitabilmente anche a quello della memorizzazione ; Non a caso, quando compriamo un dispositivo, ad esempio un cellulare, sappiamo che la sua memoria interna può essere di 64, oppure 128 Gigabyte ecc.…
DI FATTO: o La memoria del calcolatore contiene sequenza di bit che codificano l’informazione. o La sua capacità è misurata in bit, byte (o i loro multipli).
Vediamo dunque brevemente il tema della memorizzazione legato alla codifica (il tema delle varie memorie lo vedremo invece poi)
- evoluzione dei vari possibili SUPPORTI Essedo che la codifica è l’atto di trascrizione di informazione su di un supporto (esempio: il supporto di un’informazione scritta a mano può essere la carta, oppure un documento word ecc.) , vediamo quali possono essere i possibili supporti per l’informatica.
Per elencarli, seguiamo la linea temporale, che ha visto la comparsa e poi la sostituzione/evoluzione di vari tipi di supporti impiegabili per “fissare” un’informazione a livello informatico:
PRIMA – poco prima anni ‘60 POI - anni ’ 60 e ’70 DOPO DOPO ANCORA
Il primo mezzo di immagazzinamento dati a livello informatico è stato rappresentato dalla SCHEDA PERFORATA.
Si trattava di un cartoncino con fori: ogni foro rappresentava dei dati alfanumerici o istruzioni di un programma precisi.
Oltre a essere faticoso, il processo tramite schede perforate era anche lento. Per questo, negli anni ’60 fecero la loro comparsa i supporti di memoria magnetici: si trattava di grandi bobine di nastro magnetico utilizzate per mettere al sicuro i programmi per l’elaborazione elettronica dei dati.
I floppy disk lasciano spazio agli HARD DISK: si tratta sempre di dispositivi magnetici , ma che possiedono una memoria molto più spaziosa rispetto ai floppy disk:
Infine, iniziano ad essere introdotte le memorie elettroniche ( USB → le cosiddette chiavette USB )
La loro memoria è all’incirca analoga alle memorie dei
ATTENZIONE: La velocità di trasferimento di file viene espressa in bit x secondo, quando scarichiamo invece un file la velocità di download è misurata in byte x secondo ATTENZIONE: la stessa informazione può essere rappresentata con codifiche diverse
Queste schede venivano perforate con macchine specifiche, e lette da specifici lettori meccanici o ottici.
PIU’ NELLO SPECIFICO:
DUNQUE, in sostanza : o gli esseri umani, su fogli di programmazione, scrivevano manualmente il codice. o Questo veniva trasportato sulle schede perforate, in modo che potesse divenire leggibile dal computer. o Il compito di lettura era dato in mano a lettori specifici: leggendo il foro o il non foro, traducevano questo codice in uno leggibile dalla macchina, cioè il codice binario
ATTENZIONE: ricordiamoci che all’epoca si aveva a che fare con i primi computer, che dunque NON erano dotati di schermo. Per cui, inizialmente i supporti di memoria erano delle schede perforate e l’output avveniva direttamente su una stampante ad aghi.
CURIOSITA’: l’idea dell’uso di schede traforate per programmare una macchina e fare svolgere a quella un lavoro, derivò dalla tessitura (1800) → https://www.youtube.com/watch?v=q456Rw3sq-M
Dalle grandi bobine, anch’esse evidentemente scomode, si passò poi alla grande evoluzione del disco piatto:
Negli anni ’70 si è assistito a una diversificazione dei supporti di memoria: nel 1972 IBM introdusse un disco magnetico piatto e riscrivibile di 8 pollici di diametro. Nacque così il dischetto, «disco floscio», o FLOPPY DISK: si tratta di un dispositivo magnetico ; con esso veniva di fatto sfruttata la polarizzazione magnetica per permettere la codifica
Sul floppy disk potevano essere memorizzati inizialmente circa, 80 KB di memoria. Si tratta per noi oggi di uno spazio insulso, eppure rappresentava un netto miglioramento dalla scheda perforata: offriva mille volte la capacità di una scheda perforata.
Verso la fine degli anni ’80, i dischetti, che a quel punto avevano un formato da 3,5 pollici, raggiunsero la loro massima capacità di memoria: offrivano uno spazio di 1 ,5 MB
Di fatto, con gli hard disk si conquistano prima centinaia di gigabyte di memoria, fino ad arrivare ai terabyte.
Non è un caso che si parli di floppy vs hard disk: l’uno “moscio”, l’altro “duro”
nostri telefoni-cellulari odierni
PE CUI: quetsi dispositivi e le loro diversissime capacità di memoria mettono in luce come abbiamo assistito ad una evoluzione impressionante dei nostri dispositivi informatici: o sia per quanto riguarda strettamente la capacità di memoria dei calcolatori, o ma anche per le tipologie informazioni di cui disponiamo (sia arrivati alla messa in digitale)
2. MEMORIA e UNITA’ DI MISURA Facciamo un confronto con le altre unità di misura: Mentre nel SI, basato sulla rappresentazione dei numeri in forma decimale, i multipli sono declinati sulle potenze di 10, in informatica, discipline in cui si preferisce utilizzare le potenze del due laddove si può facilmente constatare che 210è uguale a 1024, i multipli vengono invece declinati su tali potenze. → COME VEDIAMO, con i bit, rispetto al prefisso precedente, si aumenta di 1024 volte sempre
Per ovviare a questo problema, l’uomo ha concepito diversi strumenti formali , che utilizzano un linguaggio formale , per l’elaborazione dell’informazione → lo abbiamo visto nella parte “linguaggio naturale vs formale” :
- come avviene un processo di elaborazione? Quali passaggi prevede? Dopo avere descritto tutti i passaggi e strumenti legati all’elaborazione, cerchiamo di capire più concretamente come essa avviene:
L'elaborazione su un computer avviene tramite l'Unità Centrale di Elaborazione (CPU), che esegue le istruzioni dei programmi (software) per manipolare e trasformare i dati di input. Questi dati, in forma digitale, vengono memorizzati nella memoria del computer (RAM) e poi trasferiti alla CPU per essere elaborati.
Vediamo i passaggi più nello specifico:
2. MEMORIZZAZIONE →I dati vengono archiviati nella memoria del computer, solitamente la RAM 3. ELABORAZIONE (CPU) →La CPU preleva le istruzioni dal programma e le esegue, manipolando i dati in base a queste istruzioni. Più nello specifico, come visto, l’eseguimento delle istruzioni ha a che vedere con gli algoritmi: La CPU esegue le istruzioni seguendo un algoritmo, che altro non sono che una sequenza di passi che definisce come devono essere elaborati i dati. 4. OUTPUT → Il risultato dell'elaborazione viene restituito al sistema tramite dispositivi di output come schermo, stampante o altoparlanti 5. MEMORIZZAZIONE (PER USI FUTURI) (opzionale) →I dati elaborati possono essere memorizzati su supporti di memorizzazione come hard disk o chiavette USB.
QUINDI, In sostanza: il computer elabora i dati seguendo le istruzioni contenute nei programmi, utilizzando la CPU come motore di elaborazione. L'intera operazione è sincronizzata dall'orologio di sistema (clock)
8. STORIA/EVOLUZIONE dei sistemi di elaborazione
I sistemi di elaborazione sono cambiati nel tempo; dal passato più remoto ad oggi, se ne sono susseguiti di diversi: da quelli analogici, fino ai primi veri e propri strumenti di elaborazione (esempio: pascalina, che erano vere e proprie macchine), fino all’introduzione dell’elettronica che ha permesso la creazione di strumenti quali i calcolatori, arrivando fino ai personal computer
Vediamo i principali sistemi di elaborazione dal passato al presente:
Utilizzava tubi a vuoto e altri componenti elettronici per eseguire i calcoli, a differenza dei calcolatori meccanici precedenti. Era molto più veloce dei calcolatori precedenti e poteva eseguire calcoli complessi.
ENIAC fu un passo fondamentale nella storia dell'informatica e ha gettato le basi per i computer moderni. Occupava una stanza intera.
2)Regolo calcolatore (^) 3)Pascalina 4)Analitycal Engine
5)ENIAC 6)Personal Computer
Nell’immagine sopra vediamo rappresentata: o Con una linea tratteggiata → la previsione di Moore o Con dei punti neri → l’effettiva realtà, cioè i computer creati negli anni secondo il numero di transitor effettivamente raggiunti in essi
Si trattò di fatto di una grandissima intuizione, che tra l’altro si verificò come piuttosto accurata dagli anni ’60 fino agli anni 200 circa; Poi, verso gli anni 2000, si è verificata una leggera impennata rispetto alla previsione di Moore → con l’avvento degli anni 2000, si è assistito di fatto all’introduzione di sempre più nuovi ed efficienti componenti, che hanno permesso di migliorare la meccanica/struttura dei transitor nei microchip, e dunque di migliorare l’elaborazione delle macchine in generale
*Gordon Moore era un chimico che ha svolto un ruolo fondamentale nello sviluppo dell'industria dei semiconduttori. Nel 1968, insieme a Robert Noyce, Moore fondò la Integrated Electronics Corporation, poi abbreviata in Intel, che divenne un leader nella produzione di microprocessori.
5. Come è fatto un calcolatore/elaboratore : la STRUTTURA/COMPONENTI dei computer
Dopo una panoramica su quelli che sono i maggiori compiti che un calcolatore/elaboratore è in grado di svolgere, spostiamo ora invece il focus sulla struttura del calcolatore: Come è fatto un computer? Quali sono i suoi componenti principali?
Vedremo in particolare:
5a. L’architettura di Vonn NEUMANN
Parlando di struttura del computer, è necessario fare un passo indietro nel tempo, per andare alle origini/albori a colui che ha per messo di dare inizio alla forma/componenti del computer per come oggi noi le conosciamo: parliamo di JHON VONN NEUMANN, primo ideatore della cosiddetta “architettura” del calcolatore →è a lui che dobbiamo la struttura dei nostri computer per come la conosciamo oggi
GENERICITA’ o Un uomo del ‘ 900 (1903- 1957) → ungherese naturalizzato statunitense o si è occupato di matematica, fisica, economia, ingegneria, meccanica quantistica, informatica… o È generalmente considerato come uno dei più grandi matematici della storia moderna e in generale una delle personalità scientifiche preminenti del XX secolo.
SCOPERTE/INVENZIONI/CARRIERA o A lui si devono contributi fondamentali in numerosi campi della conoscenza come: la teoria degli insiemi, analisi funzionale, topologia, fisica quantistica, economia, informatica, teoria dei giochi*, fluidodinamica e in molti altri settori della matematica (ad esempio, i suoi studi sugli algoritmi sono studiati ancora oggi, ha contribuito a modelli di simulazione matematica, usati tutt’ora; sistemi per le previsioni meteo ecc.) o Si è occupato di molte altre cose, quali ad esempio gli automi cellulari. Tutti quetsi aspetti, basate sulla natura e DNA, vennero da lui trattati prima ancora che venisse ufficialmente scoperta la struttura del DNA;
* Sebbene originariamente si sia focalizzata sui giochi a somma zero, in cui i guadagni o le perdite di ogni partecipante sono perfettamente bilanciati da quelli degli altri, la teoria dei giochi contemporanea si applica ad una vasta gamma di relazioni comportamentali e indica ormai genericamente la scienza delle decisioni logiche negli esseri umani, negli animali e nei calcolatori. La sua teoria dei giochi fu utilizzata nel contesto della Seconda Guerra Mondiale, a cui partecipò attivamente, per studiare e ipotizzare tutti i possibili scenari bellici che si possono sviluppare in seguito a certe decisioni.
o Vista la sua mente brillante, venne chiamato a Princeton, dove, nel 10933, divenne uno dei sei primi professori di matematica, insieme con altri, quali Albert Einstein. ( qui inizia l’avventura americana: Con l'arrivo dei nazisti al potere, abbandonò la sua posizione accademica in Germania, considerando l'avventura americana ben più promettente. Von Neumann, infatti, tenne la cattedra di Princeton fino alla morte. Nel 1937, ottenne dunque la cittadinanza statunitense)
L’APPROCCIO ALL’INFORMATICA o In ambito più strettamente informatico: fu coinvolto nella costruzione/miglioramento del computer ENIAC → venne a conoscenza da un suo collega, Herman Goldstine, impegnato anch'egli nel Progetto Manhattan, dei tentativi effettuati presso il laboratorio balistico di costruire una macchina capace di trecento operazioni al secondo. Von Neumann ne fu profondamente colpito e vide nuovi e affascinanti scenari. Conobbe ENIAC, e fu tra i presenti a vedere il miglioramento della macchina: prima, il computer, eseguiva solo operazioni predeterminate; poi, in quel tempo, si comprese la possibilità di potenziarlo applicando gli studi di Alan Turing (una decina d'anni prima nel suo articolo sui numeri computabili, cioè permettere al computer (l'hardware) di eseguire istruzioni codificate in un programma (software) inseribile e modificabile dall'esterno).
→si parlava ora di EDVAC → Nel 1945 pubblicò come frutto di questi studi “ First Draft of a Report on the Edvac ” → L'EDVAC ( Electronic Discrete Variables Automatic Computer ) era la prima macchina digitale programmabile tramite un software, basata su quella che fu poi definita l'architettura di von Neumann →considerato uno dei personaggi fondamentali per lo sviluppo dell’informatica/tecnologie informatiche.
PROGETTO MANHATTAN Fu inoltre coinvolto nel Progetto Manhattan per la costruzione della bomba atomica (Oppenheimer); un coinvolgimento alimentato dal profondo odio verso i nazisti, i giapponesi e i sovietici. Fu di fatto lui a: o suggerire come lanciare la bomba atomica a Nagasaki per creare il maggior numero di danni e di morti; o intervenire nella costruzione della bomba al plutonio realizzando la cosiddetta "explosive lens" o incentivare la costruzione di ordigni nucleari sempre più potenti ed incoraggiare per altre esplosioni nucleari come: quella sull'Unione Sovietica per scongiurare il pericolo rosso, oppure la proposta di bombardare anche Tokio o seguire di persona alcuni test nucleari nella seconda metà degli anni quaranta, che raggiunsero l'apice con la bomba H lanciata sulle Isole Marshall nel 1952 → Probabilmente furono le radiazioni di questi test a condannarlo a morte[3],
GENIO DEL MALE Per questo suo forte impegno nelle tristi vicende belliche della seconda guerra mondiale e del nucleare militare che hanno segnato l'immaginario collettivo e l'opinione pubblica mondiale è visto come figura piuttosto controversa, ed etichettato come genio del male [4].
Cosa ha fatto di fondamentale per noi Neumann nel contesto dell’informatica? Come prima accennato, il suo ruolo fu chiave nel testimoniare il progetto ENIAC/EDVAC; in particolare, pubblicando First Draft of a Report on the Edvac , egli propose per la prima volta nella storia la prima ed effettiva stesura di una ARCHIETTURA DELL’ELABORATORE.
Si trattò di una scrittura fondamentale in quanto, seppure con alcuni accorgimenti/modifiche, resta l’architettura che di fatto hanno ancora i calcolatori oggi → la struttura/architettura di tutti i nostri dispostivi, si deve dunque a Neumann → l’intuizione che lui ha avuto all’epoca, circa 80 anni fa, è stata fondamentale → tanto che, seppure cona alcune modificazioni, è valida ancora oggi.
Vediamo dunque in che cosa consisteva tale architettura, e soprattutto come ebbe quest’intuizione
2a. L’idea di realizzare un ELABORATORE UNIVERSALE
Neumann riuscì a dare vita all’architettura di un calcolatore riflettendo sulla possibilità di realizzare un calcolatore universale. Di fatto: o PRIMA → macchine/elaboratore realizzato unicamente per risolvere un solo e specifico problema o POI, CON NEUMANN → comprende la potenzialità e l’efficacia che si potrebbe ottenere realizzando un calcolatore universale, cioè in grado di risolvere non un solo problema specifico, ma qualsiasi tipo di problema → il calcolatore sarebbe così divenuto svincolato dalla problematica che deve risolvere, ed in grado di eseguire qualsiasi operazione →divenendo universale, la struttura del calcolatore non sarebbe dunque più dovuta essere studiata appositamente per un determinato compito, ma sarebbe divenuta universale, ideando cioè una sola struttura, valida per tutti i calcolatori del mondo, che sarebbero stati in grado di svolgere tutti qualsiasi operazione richiesta
2 b. La struttura dell’ ELABORATORE UNIVERSALE Ma come avrebbe dovuto essere la struttura effettiva di questo calcolatore? Come avrebbe dovuto essere strutturato affiche fosse universale? Secondo Neumann, sarebbe stato possibile rendere il calcolatore universale applicando i seguenti accorgimenti:
1. Calcolatore suddiviso in 2 parti distinte o Parte 1 → dispositivo di memorizzazione o Parte 2 → dispositivo di elaborazione →si assiste così, per la prima volta, alla separazione tra memoria ed elaborazione → separazione tra dispositivi di memorizzazione ed elaborazione 2. Uso di uno stesso codice – codice binario Inoltre : nonostante la separazione tra memoria ed elaborazione, restava il fatto che questi due scompartimenti avrebbero dovuto trattare poi in fin dei conti gli stessi dati: l’una (memoria) per immagazzinarli, mentre l’altra (elaboratore) per contenere le istruzioni per trattarli. Immagina dunque una memoria in cui sia i dati che le istruzioni vengono codificate nel medesimo modo