14.1 - LE ORIGINI DEL’INFORMATICA
A.Turing e la macchina universale. J.Von Neuman e la macchina a registri.
Turing e Von Neuman possono essere considerati i veri e propri padri dell’informatica, intesa come scienza
teorica che si occupa dell’elaborazione automatica dell’informazione.
ALAN TURING E LA MACCHINA UNIVERSALE
Turing ideò la macchina teorica in grado di simulare il comportamento di un uomo intento ad eseguire un
calcolo aritmetico.
La macchina di Turing è costituita da un nastro di lunghezza potenzialmente infinita, suddiviso i sezioni o celle,
e da un’unità di lettura e scrittura in grado di leggere, scrivere o cancellare simboli nelle celle del nastro.
Il comportamento della macchina, che funziona eseguendo una successione di passi discreti, è determinato
da un insieme finito di regole che prescrivono il simbolo da scrivere, lo stato da assumere e il verso di
spostamento del nastro nel passo successivo.
Una macchina di Turing può eseguire calcoli di qualsiasi natura e complessità e può risolvere qualsiasi
pronlema, a patto che questo potesse essere risolto in modo algoritmico ed espresso in forma simbolica.
Inoltre, Turing dimostrò che è possibile progettare una macchina universale, in grado di imitar qualsiasi altra
macchina di Turing.
Si arrivò, infine, alla formulazione della tesi di Church, la quale sostiene che l’insieme dei problemi
effettivamente risolvibili con qualsivoglia metodo meccanico coincide con quello dei problemi risolvibili dalla
macchina di Turing.
JOHN VON NEUMANN E LA MACCHINA A REGISTRI
La macchina di Turing era un modello concettuale, che non era stato pensato per essere trasformato in una
macchina reale. Però, il lavoro di Turing ha ispitato lo sviluppo di altri modelli di macchine tecnicamente più
efficienti.
Tra questi c’è a macchina a registri a programma memorizzato, elaborata dal matematico ungherese von
Neumann nella progettazione del primo vero computer digitale della storia.
La macchina di von Neumann è costituita da un’unità di elaorazione centrale di elaborazione (CPU), una
memoria divisa in celle dotate di indirizzi e due nastri divisi in celle, uno di ingresso (input) e uno di uscita
(output). L’unità di elaborazione è costituita, a sua volta, da: unità logico-aritmetica; un accumulatore; un’unità
di controllo; un contatore delle istruzioni.
Anche quella di von Neumann è una macchina universale, in grado di eseguire, in linea di principio, qualsiasi
processo algoritmico, posto che abbia a disposizione sufficienti risorse di tempo e memoria.
In questo modello si riconosce la struttura fisica di un computer (CPU, memoria RAM, disco rigido, tastiera,
monitor).
Nella macchina di von Neumann sia i dati reali sia le istruzioni primitive sono codificate mediante i due simboi
della notazione numerica binaria. Questa codifica è detta linguaggio macchina.
2.1-2.2 - TIPI DI ELABORATORI: COMPUTER MULTIUTENTE E PC
Supercomputer, mainframe, minicomputer, server, personal coputer, terminali. Desktop e workstation,
notebook, tablet, palmari, smartphone.
Tra gli elaboratori più potenti ci sono:
● SUPERCOMPUTER = sono gli elaboratori più potenti; hanno numerose applicazioni tecniche e scientifiche;
hanno una notevole potenza di calcolo, infatti è in grado di eseguire più di un trilione di operazioni al secondo;
dotato di più i 7.000 proessori capaci di eseguire altrettante operazioni contemporaneamente in base alla
procedura detta “esecuzione parallela” (gli altri computer sono costituiti da un solo processore). Il computer più
veloce al mondo è il Fujitsu K, che svolge circa 8 quadrilioni di operazioni al secondo.
● MAINFRAME o SERVER = utilizzati nelle grandi aziende per svolgere funzioni centralizzate come la gestione
della contabilità e i controllo dei magazzini. Di norma occupano un’intera stanza e sono gestiti da personale
specializzato.
● MINICOMPUTER = (server) meno potenti dei mainframe e possono avere diverse dimensioni. Sono spesso
utilizzati nelle grandi aziende e dai centri di calcolo delle piccole organizzazioni pubbliche o private.
● PERSONAL COMPUTER (PC) = possono lavorare autonomamente o elaborare dati ricevuti da altri computer
ai quali sono connessi, eseguendo calcoli, creando elenchi o rappresentando i dati in forma grafica.
● TERMINALI = simili ai personal computer ma offrono prestazioni più limitate. Sono dotati soltanto di uno
schermo, una tastiera e dei componenti elettronici necessari per comunicare con il computer a cui sono
connessi e servono solo ad inviare e ricevere informazioni. Non essendo in grado di elaborare, vengono
chiamati terminali stupidi ma, tuttavia, esistono dei terminali detti intelligenti che hanno una limitata capacità di
elaborazione.
● DESKTOP e WORKSTATION = il personal computer più diffuso è il desktop, progettato per essere
posizionato permanentemente su una scrivania. Le workstation, invece, sono dei computer personai di alto
rendimento e piccole dimensioni, utilizzate prevalentemente da scienziati, ignegneri e grafici.
● NOTEBOOK = sono computer portatili leggeri e maneggevoli. In viaggio funzionano grazie a batterie
ricaricabili, mentre in casa e in ufficio possono essere inseriti in un’unità fondamentale chiamata docking
station che consente di aumentarne il rendimento.
● TABLET PC = computer portatili che sono privi di tastiera fissa, o che sono dotati di tastiera che può
scomparire dietro il monitor. Sono forniti di sensori tuch-screen che consenton all’utente di interagire mediante
piccole penne di plastica.
● PALMARI e SMARTPHONE = sono i più piccoli in assoluto. Avendo tastiere piccole, non sono molto
maneggevoli da usare per scrivere testi o inserire gradi quantità di dati, ma risultano di grande utilità per molte
altre applicazioni.
● PDA (PERSONAL DIGITAL ASSISTANT) = sono tra i modelli più piccoli, privi di tastiera per essere ancora più
maneggevoli. Possono essere semplici organizer o unità più potenti.
2.3-2.4 - LE BASI DELL’INFORMATICA MODERNA: IL SISTEMA BINARIO E I
SEGNALI DIGITALI
Digitale e analogico, cifre binarie. Un esempio di codice digitale: il telegrafo. Il transistor. La legge di Moore.
SEGNALI ANALOGICI → paragonabili a un’onda e trasmettono un ampio spettro di infomazioni; ogni parte
dell’onda trasporta informazioni. Le onde analogiche sono molto sensibili alle interferenze.
SEGNALI DIGITALI → a differenza di quelli analogici, possono assumere solo duue stati: acceso e spento.
Per questo motivo, le inteferenze (informazioni vaganti esterne al messagiio principale) non influiscono sui
segnali digitali quanto su quelli analogici.
Il digitale presenta 2 vantaggi rispetto all’analogico: 1) meno interferenze; 2) maggior risoluzione (i segnali
digitali, infatti, hanno una capacità di risoluzione infinita).
LE CIFRE BINARIE
Digitle deriva dall’inglese digit, cifra. Il sistema di numerazione decimale impiega 10 cifre diverse, da 0 a 9, che
possono essere combinate tra loro per denotare numeri diversi.
Il computer e gli altri strumenti digitali, invece, rappresentano tutti i numericon sistema binario, costituito da
due sole cifre: 0 e 1.
UN ESEMPIO DI CODICE DIGITALE: IL TELEGRAFO
Samuel Morse agli inizi dell’800 inventò il telegrafo.
Per mezzo del telegrafo, battendo su un tasto vengono inviati lungo un cavo impulsi elettrici che, una volta
giunti a destinazione, mettono in azione un dispositivo chiamato ricevitore acustico, il quale scatta ogni volta
che arriva un impulso. Anche questo è un processo digitale in quanto il ricevitore può essere azionato o meno.
Per trasmettere un messaggio, però, è necessario un codice: il codice Morse. Questo codice è basato su scatti
intervallati da pause lunghe o corte, che una volta stampati arrivano come linee o punti.
LEGGE DI MOORE
Con in continuo aumento del numero di transistor contenuti in un singolo chip, il costo per unità di potenza
elaborativa si riduce sempre di più. Gordon Moore, uno dei fondatori della Intel, nel 1965 predisse che il
numero di transistor contenuti in un chip sarebbe raddoppiato ogni anno emmezzo (previsione corretta).
2.5 - LE BASI DELL’INFORMATICA MODERNA: BIT E BYTE
Bit e byte, le unità superiori al byte. Dal linguaggio umano al linguaggio dei computer. I codici in uso
(ASCII,EBCDIC, UMICODE)
BIT e BYTE
L’unità minima del linguaggio digitale è il but, termine che deriva dalla concatenazione dell’espressione inglese
binariy digit, cifra binari. Un bit può assumere due stati: acceso (1) o spent (0). Per trasmettere una maggiore
quantità di dati, si ricorre a un’unità più grande, il byte, che rappresenta l’unità fondamentale del linguaggio dei
computer.
1byte = 8bit 8
Poichè ognun degli 8 bit ha 2 stati possibili, un byte può rappresentare fino a 2 =256 combinazioni.
LE UNITA’ SUPERIORI AL BIT
Poichè un byte può rappresentare soltanto un singolo carattere o comando, di norma vengono utilizzati i suoi
multipli:
DAL LINGUAGGIO UMANO AL LINGUAGGIO DEI COMPUTER
Elaboratori: linguaggio binario
Uomo: lingua e sistema decimale
Affinchè ci possa essere comunicazione, il computer deve convertire le informazioni che gli forniamo nel
linguaggio inario che è in grado di interpretare, e poi deve riconvertire i risultati dell’elaborazione in un
linguaggio a noi comprensibile.
Quando si digita un carattere o un numero sulla tastiera, l’elaboratore ricerca in una tabella il numero binario
che lo rappresenta e durante l’elaborazione si serve di quel numero.
Al termine dell’elaborazione avviene il processo inverso: il computer ricerca nella tabella il carattere o il
simbolo corrispondente al numero binario e lo visualizza per l’utente.
Le tabelle a cui fa ricorso l’elaboratore sono chiamate codici. Un codice è costituito da 256 caratteri perchè gli
8 bit contenuti in un byte possono dare soltanto valori compresi tra 0 e 255 (il valore di ognuno degli 8 bit è
determinato dalla posizione che occupa nel byte.
---Conversione binario/decimale e decimale/binario---
I CODICI IN USO (ASCII, EBCDIC, UNICODE)
Il numero binario assegnato a un determinato carattere varia a seconda del codice utilizzat:
● ASCII - American Standard Code for Information Interchange (codice americano standard per l’interscambio di
informazioni), è stato sviluppato dall’ANSI ed è il codice più diffuso tra i personal computer.
● EDCDIC - Extended Binary Coded Decimal Interchange Code (codice di interscambio esteso BCD) è il codice
più usato nei mainframe e nei server più potenti.
● UNICODE - i due codici precedenti funzionano perfettamente per l’inglese ma non per altre lingue. Tale
problema è stato risolto dall’unicode che, dotato di ltre 96.000 caratteri, è in grado di rappresentare le
principali lingue scritte del mondo.
2.6 - L’UNITA’ CENTRALE DI ELABORAZIONE: IL MICROPROCESSORE
La compatibilità tra microprocessori diversi, coprocessori e processori paralleli, i microprocessori incorporati
L’unità centrale di elaborazione (CPU, Central Processing Unit) è il centro nevralgico del computer. La CPU è
costituita da un microprocessore, il dispositiv che ha reso possibile la realizzzione dei microcomputer.
LA COMPATIBILITA’ TRA MICROPROCESSORI DIVERSI
I microprocessori sono dispositivi molto potenti. Le differenze tra i vari microprocessori sono molto rilevanti.
Tali discrepanze non comportano soltanto un diverso rendimento del microprocessore, ma determinano anche
quali programmi possono essere eseguiti su un computer (della stessa famiglia o di diversa famiglia):
- i programmi scritti per essere eseguiti sui primi microprocessori della Intel, funzionano anche con i modelli più
recenti della stessa famiglia;
- è possibile che un programma che sfrutta le innovazioni dell’ultimo microprocessore di una famiglia non
funzioni correttamente con i modelli preeenti;
- i programmi scritti per un microprocessore della Intel di norma non possono essere eseguiti su un chip della
Motorola (stessa cosa per Windows ed Apple).
COPROCESSORI E PROCESSORI PARALLELI
Per velocizzare le prestazioni di un computer si possono aggiungere altri microprocessori, detti coprocessori, i
quali, sotto il controllo della CPU, svolgono compiti specifici che di norma richiedono gran dispendio di tempo.
I coprocessori possono essere impiegati per accellerare i tempi di visualizzazione sullo schermo o per
migliorare l’elaborazione delle immagini e dei suoni. I coprocessori sono un tipo particolare di processore
parallelo.
I MICROPROCESSORI INCORPORATI
I microprocessori non sono utilizzati soltanto negli elaboratori, ma si trovano dappertutto (automobili, telefoni,
ecc).
2.7 - L’UNITA’ CENTRALE DI ELABORAZIONE: I MIGLIORAMENTI
Migliorare la capacità dati, la velocità di elaborazione, l’efficienza. La legge di Joy.
Esistono 3 modi per migliorare le prestazioni di un sistema:
1. MIGLIORARE LA CAPACITA’ DATI → maggiore è la quantità dati che un computer può trasmettere ed
elaborare, migliori sono la sua velocità e la sua potenza. I primi PC potevano elaborare soltanto 8 bit alla volta;
attualmente, tutti gli elaboratori di grandi dimensioni sono in grado di elaborare 128 bit alla volta.
2. MIGLIORARE LA VELOCITA’ DI ELABORAZIONE → altro modo per migliorare le prestazioni
dell’elaboratore. I chip hanno un orologio incorporato, indicato con la parola clock, che ha la funzione di
stabilire la velocità di tutte le operazioni svolte dal computer. Questa velocità viene misurata in megahertz
(MHz, milioni di cicli al secondo). Più alta è la velocità del clock, maggiore è la velocità dell’elaboratore.
3. MIGLIORARE L’EFFICIENZA → gli elaboratori sono programmati per svolgere vari compiti mediante una
serie di istruzioni semplici, che nel loro complesso sono dette istruzioni del microprocessore. Un insieme di
istruzioni molto grande consente al microprocessore di svolgere un’ampia varietà di funzioni. I microprocessori
con un insieme complesso di istruzioni sono detti CISC (Complex Instruction Set Chips); mentre quelli con un
insieme ridotto di istruzioni sono detti RISC (Reduced Instruction Set Chips).
LA LEGGE DI JOY
Per gli elaboratori, ciò che conta è la velocità, tenendo presente il fatto che ci sono molti aspetti da
considerare.
La velocità dei computer è misurata in istruzioni per secondo (IPS), poiché gli elaboratori riescono ad eseguire
milioni di istruzioni per secondo, si utilizzano di norma i MIPS.
Nel 1984, William Joy, uno dei fondatori della Sun Mycrosystem, formulò l’ipotesi che le prestazioni degli
elaboratori sarebbero aumentate secondo un indice prevedibile; così sviluppo la nota formula di Joy:
(anno - 1984)
MIPS = 2 → andamento sempre crescente
14.4 - L’INTERAZIONE TRA CPU E MEMORIA
Il ciclo della macchina. I registri.
La CPU e la memoria interagiscono nell’esecuzione dei programmi e nell’elaborazione dei dati.
La CPU è costituita da:
a. unità di controllo = esegue le istruzioni dei programmi, coordina le attività dle microprocessore e controlla il
flusso di istruzioni tra questo e la memoria;
b. unità logico-aritmetica = effettua le operazioni aritmetiche e le operazioni logiche di raffronto tra due valori.
IL CICLO DELLA MACCHINA
Si divide in 4 fasi:
1. Caricamento = l’unità di controllo preleva l’istruzione successiva presente in memoria e la immagazzina al suo
interno in una piccola area di memorizzazione detta registro dell’istruzione.
2. Decodifica = l’unità di controllo interpreta (decodifica) l’istruzione e trasferisce i dati a cui questa fa riferimento
dalla memoria all’unità logico-aritmetica.
3. Esecuzione = l’unità logico-aritmetica esegue l’operazione logica o aritmetica richiesta.
4. Memorizzazione = i risultati delle operazioni logiche o aritmetiche svolte sono immagazzinati nella memoria
centrale o in un registro dell’unità logico-aritmetica chiamata accumulatore.
I REGISTRI
I registri sono piccole aree di memorizzazione facente parte del microprocessore stesso del microprocessore
stesso.
I microprocessori moderni hanno vari tip di registri che rivestono funzioni diverse: tenere al corrente l’utente su
quale sia la funzione in atto, immagazzinare i dati da elaborare, memorizzare i risultati del’elaboratore, ecc.
2.8 - LA MEMORIA: ROM E RAM
La memoria ROM. La memoria RAM. Tipi di memoria, i moduli di memoria.
Per svolgere le sue funzioni un elaboratore deve avere una memoria dove archiviare i programmi e i dati
necessari. Esistono diversi chip di memoria che si possono dividere in 2 categorie, entrambe molto veloci:
ROM e RAM.
LA MEMORIA ROM (Read Only Memory - memoria di sola lettura)
La ROM può solo essere letta ma non è possibile cambiarla. Essendo statica e inalterabile è anche chiamata
memoria non volatile. Il suo contenuto viene predisposto dalla casa produttrice al momento della fabbricazione
e non può essere modificato dall’utente. Quindi, allo spegnimento dell’elaboratore non altera i dati in essa
contenuti, che vengono richiamati automaticamente quando il computer viene riacceso. Questi dati sono
costituiti di norma dai programmi e dalle istruzioni necessarie all’avvio (boot) della macchina, detti anche
firmware.
LA MEMORIA RAM (Random Access Memory - memoria ad accesso casuale)
La RAM, detta anche memoria centrale, serve a memorizzare un vasto numero di programmi e dati di ogni
tipo. Quando il computer viene spento, i dati e i programmi presenti in questa memoria venono cancellati; la
memoria centrale, infatti, è volatile. Il termine random (casuale) indica la modalità di reperimento e accesso ai
dati in memoria
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Le risorse del Web - Appunti
-
Bentham - Le origini del positivismo giuridico
-
Sociologia - le origini del pensiero sociologico
-
Il Duecento e le origini