Informatica personale
Cos’è l’informatica?
L’informatica è la disciplina che studia come rappresentare, elaborare e gestire l’informazione tramite procedure automatiche.
Si occupa sia degli aspetti teorici dell’informazione e della sua computazione a livello logico, sia delle soluzioni pratiche per realizzare e utilizzare questi processi in sistemi elettronici automatizzati, detti sistemi informatici.
Per sua natura è strettamente collegata ad altre aree dell’ingegneria e della scienza, come l’automatica, l’elettronica e l’elettromeccanica, ma intrattiene anche numerose relazioni con molte altre discipline.
L’informatica si affianca, integra e supporta praticamente tutte le discipline, sia scientifiche sia umanistiche, e come tecnologia è ormai presente in quasi ogni oggetto, strumento o servizio che utilizziamo ogni giorno. Di fatto, (quasi) tutti siamo, in una forma o nell’altra, utenti di servizi informatici.
Il suo ruolo socio-economico è cresciuto rapidamente: in pochi anni ha scalato la operativa cosiddetta piramide di Anthony, passando da funzione (sostituendo o tattica supportando attività semplici e ripetitive), a funzione (di supporto alla pianificazione e alla gestione nel breve periodo), fino ad assumere un ruolo strategico.
In questa prospettiva, l’informatica è oggi un fattore chiave per lo sviluppo economico e sociale delle comunità. Proprio per questo, il non poterla utilizzare in divario digitale modo adeguato – condizione indicata con il termine Digital Divide – è considerato un problema di rilevanza globale.
Il termine informatica nasce dal francese informatique, parola composta da INFORmation (informazione) e autoMATIQUE (automatica).
In inglese questa disciplina è indicata con l’acronimo IT (Information Technology), mentre il termine globale più corretto per riferirsi alla disciplina scientifica è Computer Science.
Un sistema di elaborazione è composto da tre elementi fondamentali: hardware, software e dati.
Per hardware si intendono tutti i componenti elettronici e meccanici del computer e delle sue periferiche, cioè i vari dispositivi che costituiscono la cosiddetta macchina di Von Neumann (unità centrale, memoria, tastiera, schermo, stampante, ecc.).
Il software è invece l’insieme dei programmi che permettono all’hardware di funzionare e di svolgere compiti utili. Comprende sia il software di sistema, che gestisce le risorse del computer (come il sistema operativo), sia il software applicativo, che serve a risolvere problemi specifici o a svolgere attività particolari (videoscrittura, fogli di calcolo, browser, giochi, ecc.).
Infine ci sono i dati, cioè le informazioni che il computer deve elaborare. Possono essere di natura molto diversa: testi, immagini, video, audio e tanti altri formati. È proprio attraverso l’interazione di hardware, software e dati che un sistema informatico può svolgere le sue funzioni.
Cos’è un hardware?
L’hardware di un sistema di elaborazione può essere visto come l’insieme di più sottosistemi collegati tra loro, che operano in modo concorrente e interagiscono direttamente o indirettamente, con lo scopo di fornire una certa serie di servizi all’utente.
Il modello di riferimento più comune è il noto calcolatore convenzionale, come macchina di von Neumann: si tratta di un’architettura hardware per computer digitali programmabili, in cui i programmi stessi sono memorizzati nella memoria del calcolatore (architettura a programma memorizzato).
In questo modello l’hardware è organizzato in tre sottosistemi principali:
- Il sottosistema delle memorie (come la RAM), che conserva dati e istruzioni da elaborare;
- Il sottosistema di calcolo (la CPU), che esegue le istruzioni e svolge le operazioni logiche e aritmetiche;
- Il sottosistema di input/output (I/O), che gestisce lo scambio di dati tra il computer e l’esterno (tastiera, mouse, monitor, stampante, dispositivi esterni, ecc.).
La cooperazione tra questi tre sottosistemi permette al computer di funzionare come un sistema di elaborazione completo.
Cos’è un software?
Il software, in ambito informatico ed elettronico, rappresenta l’insieme delle componenti immateriali di un sistema di elaborazione, cioè lo “strato logico” che si contrappone all’hardware, fatto invece di elementi fisici.
In informatica, con software si intendono in particolare le istruzioni memorizzate su supporti fisici (come dischi, memorie, ecc.) che danno origine a uno o più programmi. Talvolta, in modo improprio, il termine viene usato anche per indicare i semplici dati o le informazioni.
In senso più corretto, il software è l’insieme dei programmi utilizzati in un sistema di elaborazione per gestire il funzionamento dell’elaboratore e permettere lo svolgimento delle varie attività.
Si distinguono in particolare tre categorie principali:
- Software di sistema: comprende il sistema operativo, cioè l’insieme dei programmi che gestiscono le risorse hardware e coordinano le attività del computer.
- Software di base: raccoglie programmi e procedure di utilità generale, che possono essere utilizzati da altri programmi (ad esempio, librerie, strumenti di gestione, utility).
- Software applicativo: è costituito dai programmi progettati per svolgere funzioni specifiche per l’utente, come la scrittura di testi, l’elaborazione di immagini, la gestione di basi di dati, la navigazione in internet, la contabilità e così via.
Cosa sono i dati?
In informatica, il termine dato indica un valore – spesso rappresentato in forma numerica, cioè in bit – che può essere elaborato o trasformato da un elaboratore elettronico. Il dato è l’oggetto specifico su cui agisce l’algoritmo, ciò su cui il calcolatore esegue le proprie operazioni.
I dati possono essere salvati in modo permanente nelle memorie di massa (come hard disk, SSD, ecc.). Il processo attraverso cui i dati vengono registrati in una memoria prende il nome di memorizzazione o archiviazione. Singoli dati, o più frequentemente insiemi di dati, vengono organizzati all’interno di file o database.
Dal punto di vista del contenuto, i dati possono assumere forme diverse:
- Numeri e lettere (ad esempio nei testi),
- Immagini statiche,
- Video (immagini in movimento),
- Suoni (audio),
- E molte altre tipologie.
Anche i supporti fisici su cui i dati vengono conservati possono variare: si va dalla carta ai supporti magnetici (come i floppy disk), ai supporti ottici (come i CD), fino ai moderni dispositivi digitali. Inoltre, i dati possono essere trasmessi attraverso reti di telecomunicazione, permettendo lo scambio di informazioni tra più utenti, anche molto distanti tra loro.
Parole chiave
Paradigma
Thomas Samuel Kuhn è un filosofo della scienza. La sua definizione di paradigma viene dalla sua opera più famosa, “La struttura delle rivoluzioni scientifiche” (1962).
In questo libro Kuhn usa il termine paradigma per indicare l’insieme di teorie, metodi, esempi e valori condivisi da una comunità scientifica in un certo periodo. È da lì che nasce proprio l’uso moderno del termine paradigma in ambito scientifico.
La seconda definizione di paradigma proviene dal Vocabolario Treccani. Qui il termine viene spiegato in modo più “lessicografico”: come paradigma insieme di regole, modelli e criteri che caratterizzano il lavoro degli scienziati in una certa fase storica.
Algoritmo
Un algoritmo è una procedura che permette di risolvere un problema seguendo una sequenza finita di passi semplici, chiari e privi di ambiguità.
In informatica gli algoritmi sono fondamentali, perché grazie ad essi un calcolatore elettronico può svolgere in autonomia compiti complessi, senza l’intervento diretto dell’uomo durante l’esecuzione.
Il grande vantaggio nell’utilizzare i computer sta soprattutto nella loro velocità di calcolo e nella capacità di memorizzazione: per esempio, un computer può calcolare il prodotto di due numeri di 100 cifre in una frazione di secondo e senza commettere errori, mentre una persona impiegherebbe moltissimo tempo e avrebbe un’elevata probabilità di sbagliare.
L’algoritmo di Feynman si può riassumere così:
- Formula chiaramente il problema.
- Rifletti a fondo su di esso.
- Metti per iscritto la soluzione.
Come dice Feynman: «Se non riesco a costruirlo, vuol dire che non l’ho davvero capito.»
Turing Machine
Una macchina di Turing è un modello immaginario di computer. Possiede un nastro molto lungo, come una striscia di carta, sul quale può leggere e scrivere simboli e muoversi a destra o a sinistra. Funziona seguendo sempre regole molto precise, una dopo l’altra. Questo modello viene usato in teoria dell’informatica per capire che cosa i computer possono fare e che cosa invece non è possibile calcolare.
Teorema di Bohm-Jacobini
Il teorema di Böh m–Jacopini (chiamato anche teorema del programma strutturato) è un risultato importante nella teoria dei linguaggi di programmazione.
Dice, in sostanza, che per scrivere qualsiasi programma (cioè per calcolare qualunque funzione calcolabile) bastano solo tre tipi di strutture di controllo, combinate tra loro:
- Sequenza: eseguire un’istruzione (o sottoprogramma) e poi un’altra, una dopo l’altra.
- Selezione: scegliere quale delle due istruzioni eseguire in base al valore di una condizione booleana (vero/falso). È il classico if … else.
- Iterazione (ciclo): ripetere un’istruzione finché una certa condizione booleana rimane vera. È il classico while o for.
Singolarità tecnologica
La singolarità tecnologica è, secondo Raymond Kurzweil, un momento ipotetico nello sviluppo di una civiltà in cui il progresso tecnologico diventa talmente rapido, incontrollabile e irreversibile, imprevedibile da risultare causando cambiamenti nella società umana.
Kurzweil sostiene che, una volta raggiunto questo punto, l’intelligenza artificiale diventerà infinitamente più potente dell’intelligenza di tutti gli esseri umani messi insieme.
Parte I: elaboratori elettronici
Computer e programmi
Il computer programmabile è una macchina, cioè capace di eseguire istruzioni diverse a seconda del programma che le viene fornito.
Proprio grazie a questa caratteristica può svolgere compiti anche molto differenti tra loro, ad esempio:
- Effettuare calcoli matematici complessi,
- Scrivere e impaginare documenti,
- Progettare edifici, ponti, automobili e altri oggetti tecnici,
- Navigare sul Web e accedere a informazioni e servizi online,
- Eseguire operazioni bancarie e transazioni economiche,
- Riprodurre musica, video e altri contenuti multimediali.
In sintesi, cambiando il programma, cambia ciò che il computer è in grado di fare.
Che cos’è un programma?
Un programma è una sequenza di istruzioni.
Ogni istruzione corrisponde a un’operazione semplice che il computer è in grado di eseguire, ad esempio:
- Un’operazione aritmetica,
- La memorizzazione di un numero,
- Altre operazioni elementari simili.
Eseguendo, una dopo l’altra, tutte le istruzioni che formano un programma, il computer riesce a svolgere compiti anche molto complessi.
Per svolgere le attività richieste dall’utente, un calcolatore memorizza ed elabora informazioni.
In pratica:
- Riceve dati di input sotto forma di informazioni;
- Elabora queste informazioni, cioè manipola i dati;
- Produce dati di output, nuova informazione, che restituisce all’utente come.
Così, partendo dai dati in ingresso, il computer li trasforma e fornisce un risultato in uscita.
L’informazione deve essere scritta in una forma che il calcolatore sia in grado di capire e interpretare. Per questo si utilizzano sequenze di simboli che possono assumere solo due valori possibili: 0 e 1 (cioè on/off, vero/falso).
Ogni simbolo di questo tipo si chiama bit, parola che deriva dall’inglese binary digit, cioè “cifra binaria”.
Bit e byte
Il bit è la più piccola unità di informazione.
Con:
- 1 bit possiamo distinguere una informazione tra 2 possibili;
- 2 bit permettono di scegliere una tra 4;
- 3 bit una tra 8, e così via, raddoppiando ogni volta il numero di combinazioni possibili.
Un’altra unità fondamentale è il byte, formato da 8 bit.
Il byte viene usato come unità di misura della memoria (ad esempio KB, MB, GB, ecc. si basano sul byte).
Nei circuiti elettronici, i bit sono rappresentati tramite segnali elettrici che possono assumere uno tra due livelli di tensione (per esempio “basso” = 0, “alto” = 1). Anche la memorizzazione dei bit si basa su circuiti che possono trovarsi in uno tra due stati stabili, corrispondenti anch’essi a 0 e 1.
Si parla di tecnologia digitale perché:
- In termini di qualità, i segnali digitali rendono più semplice rilevare e correggere errori nella trasmissione;
- In termini di prestazioni, la trasmissione digitale consente di inviare più dati nella stessa banda (cioè nello stesso intervallo di frequenze disponibili) rispetto ai sistemi analogici.
Componenti hardware di un calcolatore
L’architettura di von Neumann
John von Neumann (Budapest 1903 – Washington 1957) è stato un importante matematico e informatico ungherese, poi naturalizzato statunitense.
Nel 1952 formulò in modo rigoroso il modello di calcolatore elettronico a programma memorizzato, che oggi chiamiamo macchina (o architettura) di von Neumann.
Anche se i computer moderni possono essere molto diversi tra loro dal punto di vista dell’hardware, quasi tutti si basano ancora su questa stessa idea di base: un’unica memoria che contiene sia i dati sia i programmi, e alcuni sottosistemi fondamentali che collaborano tra loro.
Il cuore del sistema è la CPU (Central Processing Unit), l’unità che esegue le elaborazioni. La CPU è composta da due parti principali:
- L’ALU (Arithmetic Logic Unit), che esegue i calcoli aritmetici (somme, sottrazioni, ecc.) e le operazioni logiche (AND, OR, confronti, ecc.);
- L’unità di controllo, che legge le istruzioni del programma, le interpreta e coordina il lavoro degli altri componenti del calcolatore.
Accanto alla CPU c’è la memoria, che serve a conservare sia i dati sia i programmi. È organizzata in piccole celle tutte della stessa dimensione (per esempio 8 bit ciascuna), e ogni cella è identificata da un indirizzo numerico, che permette alla CPU di sapere dove leggere o scrivere.
Per comunicare con il mondo esterno servono le interfacce di input/output (I/O). Queste fanno da ponte tra il calcolatore e le periferiche esterne, come tastiera, mouse, monitor, stampante e così via. Le periferiche sono considerate “esterne” al sistema, e le interfacce di I/O traducono i loro segnali nel formato che il calcolatore può usare.
Tutti questi elementi sono collegati da un sistema di collegamento comune chiamato bus. Il bus è il “canale di comunicazione” interno che mette in contatto CPU, memoria e interfacce di I/O. Dal punto di vista logico, il bus è formato da tre insiemi di linee: il bus degli indirizzi, che trasporta gli indirizzi di memoria; il bus dei dati, che trasporta i dati veri e propri; e il bus di controllo, che trasporta segnali di comando e sincronizzazione.
Processore (CPU)
La CPU (Central Processing Unit), nei calcolatori moderni, è realizzata sotto forma di un microprocessore, un componente elettronico molto complesso concentrato in un singolo chip.
Un microprocessore può eseguire un insieme di istruzioni chiamato linguaggio macchina. Queste istruzioni sono tutte operazioni molto semplici, ad esempio:
- Operazioni aritmetiche (somma, sottrazione, ecc.);
- Operazioni logiche (AND, OR, NOT, …);
- Confronti tra valori;
- Lettura e scrittura di dati dalla/alla memoria.
Combinando molte di queste istruzioni elementari, il processore riesce a svolgere compiti anche molto complessi.
L’unità di controllo (CU, Control Unit) è la parte della CPU che si occupa delle funzioni di controllo: dirige e coordina il flusso dei dati tra il processore e gli altri componenti del computer.
Il suo lavoro si basa sul ciclo fetch–decode–execute:
- Fetch (lettura): l’unità di controllo preleva dalla memoria centrale l’istruzione successiva da eseguire e la copia nel registro delle istruzioni.
- Decode (decodifica): interpreta il tipo di istruzione e capisce quali operazioni devono essere svolte e da quali unità.
- Execute (esecuzione): esegue l’istruzione, inviando i segnali di controllo ai vari componenti.
Se l’istruzione richiede un calcolo, la CU fa trasferire i dati dalla memoria alla ALU (unità aritmetico-logica) e poi attende il risultato.
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.
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.
-
Appunti esame informatica
-
Appunti esame Informatica
-
Appunti lezione Informatica generale
-
Appunti Fondamenti di Informatica