Il computer: struttura e funzioni
Le componenti di un computer e le principali funzioni. Da Philippe Dreyfus 1962 al modello di von Neumann: la base di tutto il percorso di 5 anni.
Ogni giorno usiamo dei computer senza nemmeno accorgercene: c’è dentro lo smartphone in tasca, dentro il bancomat da cui prelevi, dentro il semaforo che regola il traffico e dentro il registratore di cassa del supermercato. Prima di programmare, prima di configurare una rete, prima di parlare di sicurezza informatica, dobbiamo rispondere a una domanda che sembra banale ma non lo è affatto: cos’è, davvero, un computer, e da dove nasce la disciplina che lo studia? È da qui che parte tutto il nostro percorso di cinque anni.
Ragazzi, so che volete subito programmare e fare reti. Ma se non capite cos'è un computer davvero, tutto quello che viene dopo è fumo. Ho visto studenti di quinta che ancora confondono RAM e hard disk. Questa lezione sembra semplice, ma è quella che vi salva all'orale di maturità quando vi chiedono "Cos'è l'informatica?". Se rispondete bene qui, avete già mezza tesina.
1. L'informatica: cos'è e da dove viene
La parola “informatica” non è antica quanto potrebbe sembrare: è stata coniata nel 1962 dall’ingegnere francese Philippe Dreyfus, unendo informazione e automatica. L’idea di fondo è già tutta nel nome: automatizzare il trattamento dell’informazione, cioè far fare a una macchina — in modo rapido, preciso e ripetibile — operazioni che un tempo richiedevano ore di calcolo manuale.
L’informatica (in inglese Computer Science) è la scienza che studia la rappresentazione, l’elaborazione e la trasmissione automatica dell’informazione per mezzo di sistemi di calcolo elettronici.
Scienza e tecnologia: due facce della stessa medaglia
È utile distinguere subito due piani che spesso vengono confusi. L’informatica come scienza studia i fondamenti teorici: cosa significa “calcolare”, quali problemi sono risolvibili da una macchina e in quanto tempo, come si organizzano i dati, come si progetta un algoritmo corretto ed efficiente. È matematica applicata, logica, teoria della computazione. L’Information Technology (IT), invece, è l’insieme delle tecnologie, degli strumenti e delle infrastrutture con cui quella scienza viene messa in pratica: i computer, le reti, i sistemi operativi, i data center, il cloud. In parole povere: l’informatica ti dice come si dovrebbe risolvere un problema in modo automatico; l’IT è ciò che ti permette di risolverlo davvero, su una macchina reale, oggi.
Quando prenoti un biglietto del treno dall’app, dietro le quinte c’è un algoritmo (studiato dall’informatica) che verifica la disponibilità dei posti, e un’infrastruttura IT — server, database, rete — che fa girare quell’algoritmo in pochi decimi di secondo mentre migliaia di altre persone fanno la stessa cosa nello stesso istante.
2. Il computer: un elaboratore elettronico digitale
Elaboratore, elettronico, digitale — tre parole, tre concetti
Ogni volta che si definisce un computer, si usano quasi sempre questi tre aggettivi. Vale la pena capire perché ciascuno di essi è necessario, e cosa cambierebbe se ne togliessimo uno.
Elaboratore significa che la macchina non si limita a “contenere” informazione, ma la trasforma secondo un procedimento definito: riceve dei dati in ingresso e restituisce un risultato. Un semplice schedario di carta non è un elaboratore, perché non trasforma nulla da solo.
Elettronico significa che l’elaborazione avviene sfruttando segnali elettrici che attraversano componenti a stato solido (i transistor), e non ingranaggi meccanici. Prima dei computer elettronici esistevano già “calcolatori”: l’abaco, la Pascalina di Blaise Pascal (1642), la macchina analitica di Charles Babbage (1837, mai completata ai suoi tempi). Erano tutte macchine meccaniche: lente, ingombranti, e limitate dalla fisica degli ingranaggi. Il passaggio all’elettronica, negli anni ’40 del Novecento, ha permesso velocità migliaia di volte superiori.
Digitale è forse il concetto più importante da fissare fin da subito. Un segnale analogico può assumere infiniti valori intermedi, in modo continuo, come il volume di una manopola girevole o la lancetta di un vecchio orologio. Un segnale digitale, al contrario, assume solo valori discreti e ben distinti: nel caso dei computer, praticamente sempre due soli stati, che chiamiamo convenzionalmente 0 e 1 (in elettronica: assenza o presenza di tensione). Rappresentare l’informazione in questo modo, seppur sembri “povero”, è ciò che rende un computer straordinariamente affidabile: un segnale digitale è molto più semplice da distinguere e da correggere di un segnale analogico, perché basta riconoscere se il valore è “vicino a 0” o “vicino a 1”, ignorando piccoli disturbi.
Un computer è una macchina elettronica digitale programmabile, in grado di acquisire, elaborare, memorizzare e restituire informazioni codificate in forma binaria, seguendo una sequenza ordinata di istruzioni chiamata programma.
Perché digitale e non analogico? Risposta che voglio sentire: "Perché 0 e 1 sono facili da distinguere anche con rumore elettrico, mentre un segnale analogico con infiniti valori si corrompe subito". Se dite "Perché digitale è più moderno" non mi basta. Voglio la ragione fisica: affidabilità e correzione errore. Scrivetelo.
3. Input e output: il computer come “scatola” che trasforma dati
Qualunque sia la complessità interna, ogni elaborazione può essere descritta con uno schema semplicissimo: qualcosa entra, viene elaborato, qualcosa esce.
Le periferiche di input sono i dispositivi con cui l’utente (o l’ambiente esterno) fa entrare dati nel sistema: tastiera, mouse, microfono, webcam, scanner, touchscreen, ma anche un sensore di temperatura o un lettore di codici a barre. Le periferiche di output restituiscono il risultato dell’elaborazione in una forma percepibile: monitor, altoparlanti, stampante, oppure — in un sistema embedded — un semplice motore o un LED che si accende. Alcuni dispositivi, come lo schermo touch di uno smartphone, sono contemporaneamente input e output.
Il touch del vostro smartphone è l'esempio perfetto di dispositivo I/O: è output quando mostra l'immagine, è input quando rilevate il tocco. Stessa cosa per un visore VR, per una stampante multifunzione che scannerizza e stampa, per una scheda di rete che invia e riceve. Quando vi chiedo "è input o output?" la risposta corretta può essere "entrambi".
4. Hardware, software e firmware
Un computer è utile solo grazie all’incontro di due mondi molto diversi: la parte fisica che puoi toccare, e le istruzioni immateriali che le dicono cosa fare. Esiste poi un terzo elemento, meno noto, che sta esattamente a metà tra i due.
| Componente | Cos’è | Esempi |
|---|---|---|
| Hardware | La parte fisica e tangibile del computer: tutto ciò che puoi vedere e toccare | CPU, RAM, hard disk, case, tastiera, monitor |
| Software | Le istruzioni immateriali (programmi) che dicono all’hardware cosa fare | Sistema operativo, browser, videogioco, app |
| Firmware | Software “di basso livello” scritto in memoria permanente dentro l'hardware stesso | BIOS/UEFI scheda madre, firmware router, stampante, chiavetta USB |
Il firmware è considerato una via di mezzo perché è software a tutti gli effetti (è codice, è fatto di istruzioni), ma è così strettamente legato all'hardware su cui gira — spesso scritto in una memoria dedicata non facilmente modificabile dall'utente — che convenzionalmente lo si tratta come una categoria a sé. Quando aggiornate il BIOS o il firmware del router, state aggiornando software che vive dentro l'hardware.
5. Le componenti principali del computer: una prima panoramica
Prima di entrare nel dettaglio del modello teorico (il prossimo argomento), è utile avere già in mente un vocabolario minimo delle parti fisiche che compongono un normale PC desktop. Le riprenderemo e approfondiremo nelle prossime lezioni.
| Componente | Funzione in breve |
|---|---|
| Case (cabinet) | Il “contenitore” metallico o plastico che alloggia e protegge fisicamente tutte le componenti interne; esiste in vari formati (tower, mini-tower, all-in-one) |
| Scheda madre | Il circuito stampato principale a cui si collega tutto il resto — la vedremo in dettaglio nel paragrafo 4 |
| CPU (processore) | L’unità che esegue materialmente i calcoli e le istruzioni del programma |
| RAM (memoria centrale) | La memoria di lavoro veloce e temporanea, dove risiedono dati e programmi in esecuzione |
| Memoria di massa | Hard disk o SSD: conserva dati e programmi anche a computer spento |
| Alimentatore (PSU) | Converte la corrente da rete elettrica in tensioni utilizzabili dai componenti interni |
| Scheda video (GPU) | Elabora e genera le immagini da inviare al monitor; può essere integrata nella CPU o su scheda dedicata |
| Porte e connettori | USB, USB-C/Thunderbolt, HDMI/DisplayPort, Ethernet (RJ45), jack audio: collegano il computer a periferiche e reti |
6. Il ruolo del computer: esecutore di comandi
Un computer non “pensa” — esegue
È fondamentale sgombrare subito il campo da un equivoco molto comune. Un computer, per quanto potente, non ha iniziativa propria: non decide, non capisce nel senso in cui lo facciamo noi, non interpreta le intenzioni. È — nella sua natura più profonda — un esecutore di comandi: riceve una sequenza di istruzioni precise, scritte da un essere umano (o generate da un altro programma), e le esegue esattamente come sono scritte, una dopo l’altra, senza mai chiedersi “perché”.
Programma e algoritmo
Un algoritmo è una sequenza finita, ordinata e non ambigua di istruzioni che permette di risolvere un problema, o una classe di problemi, in un tempo finito. Un programma è la traduzione concreta di un algoritmo in un linguaggio che il computer (o un traduttore intermedio) può eseguire.
Perché un algoritmo sia davvero tale, deve rispettare alcune proprietà: deve terminare dopo un numero finito di passi (finitezza), ogni passo deve essere descritto senza possibilità di interpretazioni diverse (non ambiguità), deve poter essere eseguito realmente con le risorse disponibili (effettività), e deve avere zero o più dati in ingresso e almeno un risultato in uscita (input e output, proprio come nello schema visto sopra).
Anche una ricetta di cucina, se scritta con sufficiente precisione, è un algoritmo: (1) prendi due fette di pane, (2) apri il frigorifero, (3) prendi il formaggio, (4) posiziona il formaggio su una fetta, (5) chiudi con la seconda fetta. Un essere umano, se un'istruzione fosse poco chiara (“aggiungi qualcosa di buono”), userebbe il buon senso per colmare il vuoto. Un computer no: se un'istruzione non è scritta con precisione assoluta, l'esecuzione fallisce o produce un risultato sbagliato.
Una frase che sentirai spesso, e che vale la pena capire fino in fondo, è che il computer è “stupido ma velocissimo”. Non ha capacità di giudizio, non comprende il significato di ciò che elabora, non si accorge se un’istruzione porta a un risultato assurdo — a meno che qualcuno non gli abbia esplicitamente insegnato a controllarlo. In compenso, esegue miliardi di istruzioni elementari al secondo, con una precisione e una costanza impossibili per qualunque essere umano. La potenza dell’informatica moderna nasce proprio da qui: dalla capacità di scomporre problemi complessi in sequenze lunghissime di passi elementari, che la macchina esegue senza mai stancarsi e senza mai sbagliare per distrazione.
7. Il modello di von Neumann
Un po’ di storia: John von Neumann e il concetto di “programma memorizzato”
I primissimi computer elettronici, come l’ENIAC (1945), erano programmabili solo fisicamente: per cambiare il calcolo da eseguire bisognava letteralmente ricollegare cavi e interruttori, un lavoro che poteva richiedere giorni. Nel 1945 il matematico ungherese-americano John von Neumann, lavorando al progetto della macchina EDVAC, descrisse un’architettura radicalmente più efficiente: anche il programma, non solo i dati, viene memorizzato nella stessa memoria della macchina, sotto forma di numeri binari. Cambiare programma significa quindi semplicemente caricare in memoria una sequenza diversa di istruzioni — non più riprogettare l’hardware. Questa idea, nota come stored-program concept, è alla base di praticamente ogni computer che usiamo oggi, dallo smartphone al supercomputer.
L’architettura di von Neumann è un modello di calcolatore in cui CPU, memoria e unità di input/output sono collegate da un unico bus condiviso, e in cui istruzioni del programma e dati risiedono nella stessa memoria, indistinguibili se non dal modo in cui vengono interpretati dalla CPU.
La CPU: è il “cervello operativo” del computer, il componente che esegue materialmente le istruzioni. Al suo interno si distinguono tre parti principali: l’ALU (Arithmetic Logic Unit), che esegue le operazioni aritmetiche e logiche; la Unità di Controllo (Control Unit), che legge le istruzioni dalla memoria, le decodifica e coordina il lavoro; e i registri, piccolissime aree di memoria interne alla CPU stessa, estremamente veloci. Il ritmo con cui la CPU esegue le istruzioni è scandito da un segnale elettrico regolare chiamato clock, la cui frequenza si misura in GHz. I processori moderni contengono spesso più core, cioè più unità di elaborazione indipendenti sullo stesso chip, capaci di lavorare in parallelo.
8. RAM e ROM: due memorie, due ruoli opposti + Memorie di massa
| Caratteristica | RAM | ROM |
|---|---|---|
| Nome esteso | Random Access Memory | Read-Only Memory |
| Volatilità | Volatile — si perde allo spegnimento | Non volatile — resta anche spento |
| Scrittura | Lettura e scrittura continua | Scritta una volta, letta molte volte |
| Uso tipico | Memoria di lavoro: dati e programmi in esecuzione | Firmware di avvio (BIOS/UEFI) |
| Velocità | Molto veloce, ma più lenta dei registri | Generalmente più lenta della RAM |
Le memorie di massa: RAM e ROM non bastano a conservare tutti i nostri dati: la RAM è troppo volatile, la ROM troppo piccola e rigida. Serve quindi una memoria di massa (o memoria secondaria), pensata per conservare grandi quantità di dati in modo permanente, anche a computer spento.
L’hard disk (HDD) è la tecnologia storica: memorizza i dati magneticamente su dischi metallici rotanti (i “platter”), letti e scritti da una testina meccanica in movimento — un po’ come un vecchio giradischi. È economico e capiente, ma relativamente lento. L’SSD (Solid State Drive) è la tecnologia più moderna: non ha parti meccaniche, memorizza i dati elettricamente in celle di memoria flash, esattamente come una chiavetta USB ma più veloce e capiente. È significativamente più rapido, silenzioso e resistente agli urti.
Un caso particolare è il NAS (Network Attached Storage): non è la memoria interna di un singolo computer, ma un dispositivo di archiviazione dedicato, collegato alla rete locale, che rende i propri dischi accessibili contemporaneamente a più computer e dispositivi.
Poiché nel modello di von Neumann istruzioni e dati condividono lo stesso bus per raggiungere la CPU, quel canale diventa inevitabilmente un collo di bottiglia: per quanto la CPU sia veloce, deve comunque attendere il proprio turno per leggere ogni istruzione e ogni dato attraverso lo stesso “corridoio”. Questo limite strutturale, noto come von Neumann bottleneck, è uno dei motivi per cui l’architettura hardware moderna include memorie intermedie sempre più veloci (le cache) tra CPU e RAM.
9. La scheda madre (motherboard)
Se la CPU è il cervello e la memoria è la sua “scrivania di lavoro”, la scheda madre (motherboard) è il sistema nervoso che li tiene collegati, insieme a tutto il resto. È un circuito stampato (PCB, Printed Circuit Board) su cui sono incisi migliaia di sottilissimi percorsi elettrici, e su cui trovano posto gli slot e i connettori per ogni altro componente del sistema.
Tra i suoi elementi principali troviamo lo zoccolo (socket) per la CPU, gli slot RAM in cui inserire i moduli di memoria, gli slot di espansione PCIe per schede video o altre schede aggiuntive, i connettori SATA e M.2 per collegare hard disk e SSD, il connettore di alimentazione proveniente dall’alimentatore, e il pannello I/O posteriore con le porte USB, video ed Ethernet accessibili dall’esterno del case. A coordinare il traffico tra tutte queste parti provvede il chipset: un insieme di circuiti dedicati che gestisce la comunicazione tra CPU, memoria e periferiche.
10. Tipologie di computer
Non tutti i computer si assomigliano. Cambiano enormemente per dimensioni fisiche, potenza di calcolo, consumo energetico e scopo d’uso — dal minuscolo microcontrollore dentro una lavatrice, fino al mainframe di una banca che elabora milioni di transazioni al giorno.
| Tipologia | Caratteristiche | Esempio tipico |
|---|---|---|
| Sistema embedded | Sistema dedicato a un unico compito specifico, integrato dentro un altro dispositivo | Centralina auto, lavatrice, termostato smart |
| MCU (Microcontrollore) | Un intero mini-computer su un singolo chip | Arduino, chip tastiera meccanica |
| SBC | Computer completo su un’unica piccola scheda | Raspberry Pi |
| Mobile | Portatili orientati a connettività e autonomia | Smartphone, tablet |
| PC Desktop | General purpose da scrivania, componibile | PC casa/ufficio, gaming |
| Minicomputer | Categoria storica anni ’60-’80 | DEC PDP-11 (storico) |
| Workstation | Alte prestazioni per grafica professionale | CAD, rendering 3D, editing video |
| Mainframe | Grandissima potenza, affidabilità, migliaia transazioni | Sistemi bancari, anagrafiche statali |
Tutte queste macchine, dal microcontrollore al mainframe, condividono la stessa base concettuale che abbiamo visto: sono elaboratori elettronici digitali che seguono, con qualche variante, il modello di von Neumann. Cambiano la scala, la potenza e lo scopo — non i principi fondamentali. Se capite von Neumann, capite sia Arduino che il mainframe della banca.
11. 📌 I concetti chiave
- L’informatica è la scienza dell’elaborazione automatica dell’informazione; l’IT è l’insieme delle tecnologie che la mettono in pratica.
- Un computer è un elaboratore elettronico digitale programmabile: acquisisce dati in input, li elabora e restituisce un risultato in output.
- Hardware = parte fisica, software = istruzioni immateriali, firmware = software incorporato nell’hardware.
- Il computer è un esecutore di comandi, privo di iniziativa propria: esegue algoritmi (sequenze finite, ordinate e non ambigue di istruzioni) trasformati in programmi.
- Il modello di von Neumann (1945) descrive CPU, memoria e I/O collegati da un bus condiviso, con istruzioni e dati memorizzati nello stesso spazio: è la base di quasi tutti i computer moderni.
- La CPU è composta da ALU, Unità di Controllo e registri; la RAM è veloce ma volatile, la ROM è lenta ma permanente; le memorie di massa (HDD, SSD, NAS) conservano i dati in modo duraturo.
- La scheda madre collega fisicamente tutte le componenti attraverso socket, slot e connettori, coordinati dal chipset.
- Esistono moltissime tipologie di computer — da MCU ed embedded fino ai mainframe — che condividono gli stessi principi ma differiscono per scala e scopo.
📚 Prossimo passo
Nella prossima lezione entriamo nel dettaglio della CPU: come funziona il ciclo fetch-decode-execute, cosa sono i registri, perché la cache è fondamentale e cosa significa avere più core. Se questa lezione è chiara, la prossima sarà una passeggiata.
