Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Ovvero, l’utente ottiene delle informazioni (OUTPUT) a partire da dati (INPUT), attraverso un’elaborazione
automatica.
Tutti gli input vengono convertiti internamente dal computer in numeri per poter essere manipolati. Alla base
di questa trasformazione c’è il SISTEMA BINARIO.
Composto da due valori indivisibili: zero e uno (0 e 1) = BIT.
1 = ON
0 = OFF
Hardware = la parte materiale del computer (scheda madre, tastiera, schermo, CPU, RAM…)
Software = tutta la parte “immateriale”
Non esiste il software senza l’hardware, mente l’hardware esiste da solo.
Firmware = una via di mezzo tra i due, in quanto software “scritto” direttamente sui circuiti stampati, quindi è
tangibile e difficilmente riscrivibile. Es: BIOS
2. CPU o processore: centro di elaborazione logico matematica dei dati = ciò che trasforma gli input in
output. Il cervello.
La CPU lavora in cicli, “clock”, misurati in Hertz e nel suo multiplo GigaHertz (GHz), ovvero quante
operazioni compie in un ciclo. Le operazioni vengono effettuate in un linguaggio specifico di “basso
livello” chiamato “linguaggio macchina”.
Es: Una CPU a 3.5 GHz compie 35 miliardi di operazioni al secondo.
I principali produttori di CPU del mercato moderno sono AMD e Intel.
La CPU lavora scomponendo tutte le operazioni nella loro versione più semplice (riporta tutto a
semplici operazioni matematiche).
Una CPU è composta da diversi “core”, ovvero nuclei di elaborazione che lavorano in sincrono.
Teoricamente più core = più performance.
Ogni CPU è dotata di piccole memorie direttamente sul chip chiamate “cache” che si dividono in tre
livelli, partendo dalla 1, la più piccola, ma la più veloce, fino alle 3, la più grande, ma la più lenta.
3. La RAM: memoria volatile ed è la principale memoria di lavoro. Molto veloce per un’istantanea
reperibilità dei dati.
È una memoria gestita dal sistema, dove l’utente ha pochissimo accesso. Più RAM abbiamo nel nostro
sistema, meglio sarà per tutte le nostre applicazioni. Più RAM ho: più posso lavorare su cose differenti,
oppure posso lavorare su un qualcosa di molto pesante.
La RAM fisicamente è divisa in 2-4 banchi, gli stick. Le RAM vengono costruite secondo degli
standard internazionali che ne vanno a definire tutti gli aspetti, dalla capacità alla velocità ecc. Lo
standard più recente è il DDR5.
4. HARD DISK: con HDD intendiamo i dischi rigidi a dischi magnetici, ovvero lenti, ma più economici.
Con SSD, Solid State Drive, intendiamo invece i più moderni supporti non meccanici, molto più
performanti, costituiti da chip e non da dischi.
Sono dispositivi di memoria di massa per l’archiviazione permanente dei dati. A differenza delle
memorie volatili i dati al loro interno rimangono salvati allo spegnimento della macchina (a meno che
io non li cancelli). Su questi drive vengono installati tutti i software per il funzionamento del computer,
dal sistema operativo ai vari programmi che utilizziamo.
Gli HDD, Hard disk meccanici hanno una memorizzazione di dati magnetica. Sono lenti, offrono
capacità estese di memorizzazione, la loro velocità è misurata in RPM (rotation per minutes).
- Formattazione = la preparazione alla scrittura dell’hard disk. Questo viene effettuato
imprimendo all’hard disk una struttura logica, detta “file system”, necessaria per la
memorizzazione e la gestione dei file.
La formattazione più comune è chiamata “di alto livello”, ovvero ristrutturando l’hard disk e
azzerando l’indicizzazione dei file facendo credere al computer che sia di fatto vuoto.
La formattazione di basso livello prevede un passaggio in più, ovvero la sovrascrittura dei
dati, chiamata Zero Filling.
- Il file system = struttura logica con la quale viene suddiviso in tante piccole celle l’hard disk.
È definito anche come tabella di allocazione dei file (file allocation table – FAT). Ogni sistema
operativo ha un suo file system preferito, es: Windows vuole NTFS, MacOS vuole APFS;
questo comporta soventi problemi di compatibilità tra i file. FAT e ex FAT sono universali, il
secondo risolve semplicemente molti problemi del primo.
Il file system gestisce l’hard disk in tracce e settori, i settori sono l’unità minima leggibile o
scrivibile, raggruppati in cluster. Questi settori sono allineati all’interno di tracce, ovvero
suddivisioni concentriche dei dischi magnetici.
FILE = sequenza di informazioni codificate, registrate in codice binario, che hanno un indirizzo di apertura e
un indirizzo di chiusura. Le informazioni scritte all’interno di un file sono codificate e possono essere
correttamente visualizzate da software dedicati. Il modo con il quale le informazioni vengono codificate
all’interno del file viene esplicitato dall’estensione dello stesso → una sigla posta dopo il nome del file
preceduta da un punto. L’estensione indica al sistema quale software usare per decodificare il file.
I file esecutivi (.exe, .bat, .app) non hanno bisogno di software specifico per essere aperte, ma contengono
codici esecutivi che alla loro apertura eseguono auto automaticamente comandi e procedure (tipo Word,
Chrome, Wp…). Ogni file ha una determinata dimensione sull’hard disk che indica quanti bytes o più occupa.
I file sono soggetti a frammentazione, ovvero un processo per cui un singolo file viene spezzato in più parti
sull’hard disk al fine di ottimizzare gli spazi vuoti. Questo processo, se non corretto tramite la
deframmentazione, che riposiziona in modo sequenziale e ordinato i dati sull’hard disk, porta, nel caso dei
drive meccanici, un consumo eccessivo della testina di lettura e degradazione della performance.
La cancellazione di un file normalmente comporta l’eliminazione del suo indice facendo credere al sistema
che il file non esista più.
I file vengono raggruppati e organizzati in una serie di CARTELLE. Dal punto di vista tecnico sono degli
indici di file, detti “DIRECTORY”. Sono tecnicamente delle liste che contengono nomi, caratteristiche e
indirizzi dei file presenti sull’hard disk.
Ciò che vediamo sullo schermo è semplicemente una semplificazione grafica. Tutte le cartelle sono directory.
Quando diciamo “cartella” intendiamo la semplificazione visiva di una directory.
Sistema operativo
Gli attuali sistemi operativi (Windows, MacOS, Linux) sono sistemi operativi ad interfaccia grafica, ma
consentono comunque di essere operati attraverso un’interfaccia a riga di comando.
I vecchi sistemi operativi (come MS-DOS) erano sistemi a riga di comando. Significa che l’utente operava
attraverso comandi e linguaggi specifici.
I sistemi operativi gestiscono TUTTO il SISTEMA COMPUTER. È il software principale da cui dipendono
tutti gli altri software e le comunicazioni con l’hardware.
Le misure
Le unità di misura base sono 0 e 1, chiamati BIT, dove 0 = assenza di un impulso elettrico; 1 = sua presenza.
8 Bit costituiscono 1 Byte.
Il valore minimo di 1 Byte è 0, il suo valore massimo è 255, ovvero 8 volte 1.
128 64 32 16 8 4 2 1
0 0 0 1 1 1 0 1
29
I multipli
Byte 1024 = 1 KB
Kilobyte mille byte 1024 KB = 1 MB
Megabyte milione byte 1024 MB = 1 GB
Gigabyte miliardo byte 1024 GB = 1 TB
Terabyte biliardo byte 1024 TB = 1 PB
Petabyte un milione di miliardi byte …
Si arriva a 1024 perché sono sistemi basati sulla potenza di 2. Esempio: 1 KB è uguale a 2 alla 10 bytes.
1024 alla seconda è un Megabyte, 1024 alla terza è un Gigabyte, 1024 alla quarta è un Terabyte, 1024 alla
quinta è un Petabyte, per convenzione.
COMPUTER GRAPHIC
Il cuore della scheda grafica è la GPU = Graphics Processing Unit → come una CPU, ma altamente
specializzata nel calcolare immagini.
Le GPU sono dotate di una memoria di lavoro specifica, chiamata VRAM (= Video RAM). L’ultima versione
è la GDDR6X.
Può essere utilizzata dal sistema per i normali processi di visualizzazione dello schermo, ma le sue prestazioni
vengono utilizzate soprattutto in software grafici, ricerca (simulazioni scientifiche) e videogiochi.
I principali produttori di schede video sono Nvidia e AMD.
Grafica Raster:
• Raster = griglia
• Bitmap = la mappatura dei Bit.
• Pixel = picture elements.
Questi 3 termini rappresentano lo stesso concetto di immagine, ovvero di immagini basate su piccoli puntini
colorati (i pixels) posti gli uni accanto agli altri, come un mosaico.
Più pixel sono presenti in un’immagine più si avrà una risoluzione alta, che non è però sinonimo di qualità
visiva. Stiamo parlando di pixel digitali, e non di pixel fisici contenuti nei monitor. Questo perché il pixel
software non ha un riscontro di dimensione fisica nel reale, è semplicemente un’informazione.
Il pixel software è un’informazione numerica composta da due valori di posizione X, Y e da altri valori
numerici che ne identificano il colore R, G, B = Red, Green, Blue, da 0 a 255
Valore 0 = quel colore non è presente, 255 = saturazione massima di quel colore.
Quando tutti e tre sono a 255 mi esce il bianco.
Queste informazioni intrinseche delle immagini prendono fisicità e dimensione solo nel momento in cui
vengono visualizzati o su schermo o su carta.
Le immagini Raster sono delle mappature = enormi griglie composte da pixels secondo i loro valori.
Grafica Vettoriale:
basata su curve matematiche, geometricamente disegnate tramite VETTORI che definiscono
• Forza
• Orientamento
• Curvatura
Delle curve.
Essendo una grafica definita geometricamente e da operazioni matematiche è infinitamente scalabile, viene
quindi ricalcolata ogni volta che la si visualizza. Inoltre, non essendo composta da pixels non si hanno
problematiche di risoluzione. La grafica vettoriale si adatta alla risoluzione del dispositivo di uscita in maniera
flessibile e nella massima definizione possibile per l’output. È quindi indipendente dalla risoluzione.
È una grafica che si adatta per forme semplici, come loghi e testi, non è invece utilizzabile per la resa di
immagini fotografiche.
A. Punto angolo = un punto dal quale si diramano linee rette. Non ha maniglie di Bézier
B. Punto curvo = un punto dal quale si dirama una linea curva. Ha maniglie di Bézier che condividono
lo stesso orientamento ma non la stessa forza.
C. Punto misto = angolare/curvilineo. Le maniglie sono spezzate: non condividono né orientamento né
forza.
Attraverso questi tre punti è possibile disegnare tutte le forme. Da un punto di controllo si può diramare una e
una sola linea per volta. Non possono esistere più diramazioni della linea dallo stesso punto.
La grafica vettoriale e la grafica raster possono convivere in uno stesso documento. Il più utilizzato è il pdf.
Risoluzione e definizione
La risoluzione è il numero di pixels che compone un’immagine. È un dato numerico sempre certo. Quanti
pixel per X e quanti per Y.
Alcuni formati di salvataggio come JPG e GIF operano delle operazioni di riduzione della definizione delle
immagini, operazioni chiamate di compressione che elaborano secondo determinati algoritmi alcune parti
delle immagini, riducendone la qualità e il peso che queste avranno sull’Hard Disk.
Un altro processo è quello di interpolazione: processo che aumenta il numero di pixel di un’immagine
lavorando secondo algoritmi matematici. Questo processo non inventa nessun dato nuovo, ma lavora su lavori
numerici e cromatici dei pixel creando valori CROMATICI intermedi a partire da due o più valori di
riferimento → si avrà quindi un aumento di risoluzione ma NON di definizione poiché l’immagine presenterà
vari artefatti.
DPI
DPI è un valore che ci interessa nella fase di stampa.
DPI = Dot Per Inch, ovvero Punti Per Pollice, dove 1 pollice = 2,54 cm.
Il suo equivalente a livello video si chiama PPI (Pixels Per Inch). PPI è un valore che dipende troppo dal
monitor di riferimento, perché monitor differenti hanno risoluzioni differenti. Il PPI ci permette di capire
quanto un’immagine può essere grande (quanti pixels deve avere) per essere visualizzata al 100% sul monitor
di riferimento senza subire alcun processo di ridimensionamento.
Il valore x DPI significa che in 2,54 cm di carta trasferirò lo stesso numero x di punti su carta. Se questo
numero x è piccolo (es: 100) riuscirò ancora a vedere i puntini singolarmente (bassa definizione dell’immagine
sulla carta stampata).
Un valore ottimale per la stampa parte da 300 DPI. Se scansiono una foto a 300 DPI per rielaborarla e
ristamparla in rapporto 1:1 userò invece 600 DPI per stamparla al doppio (rapporto 1:2) e la scansionerò a
1200 per stamparla al quadruplo (rapporto 1:4) e così via, ricordando sempre che file ad altissime risoluzioni
(DPI molto alto) andranno a pesare molto sia sulla performance che sul disco, inoltre, bisogna usare un valore
DPI adeguato alla misura di stampa, es: è inutile stampare un file a 1200 DPI per un bigliettino da visita.
L’informazione in DPI è una proprietà del FILE IMMAGINE. I software vettoriali come illustrator leggono
questa informazione e visualizzano l’immagine raster seguendo le indicazioni in DPI e non in pixel.
Bisogna sempre prestare attenzione a settare correttamente la giusta corrispondenza tra misure in pixel e misure
in cm per la stampa.
Software come Photoshop permettono di controllare queste informazioni all’interno della funzione
<dimensione immagine>, altrimenti un’immagine a DPI molto bassa, visualizzata in Illustrator potrebbe
sembrare sì grande quanto tutto lo schermo, mentre su carta stampata sarebbe inadatta e pixellata. Per
settare il dato su Photoshop: > funzione > dimensione immagine > casella “campiona”.
Esempio:
Che misura ha un formato A4 a 300 DPI ( = un A4 fotografico)?
Larghezza A4 = 21 cm
Altezza A4 = 29,7 cm
Divido queste due misure per 2,54 cm e moltiplico per 300. Il risultato è 2480 x 3507 pixels. Moltiplicando
questi due valori ottengo quasi 8.7 milioni di pixels, ovvero circa 8/9 Mega pixel. So quindi che scattando
fotografie in 8 Mega pixels posso stampare direttamente su A4 in alta risoluzione.
È un sistema cromatico, dove la sigla che lo identifica è il numero di possibilità cromatiche all’interno di un
sistema di visualizzazione.
RGB: I dispositivi digitali di visualizzazione in Output utilizzano di default il sistema cromatico RGB ( = Red,
Green and Blue). Un sistema cromatico ADDITIVO. Il valore numerico minimo in questo sistema è il nero
RGB (0, 0, 0), mentre il valore massimo è il bianco RGB (255, 255, 255).
Lo spazio RGB ha tre valori numerici, i CANALI CROMATICI. Ognuno di questi canali è come se fosse
un’immagine in bianco e nero a sé stante. Conviene sempre lavorare in RGB quando effettuiamo operazioni
su immagini digitali.
Quando invece dobbiamo andare in stampa, l’immagine dovrà essere convertita nel sistema in quadricromia
CMYK, composto dai quattro inchiostri fondamentali: ciano, giallo, magenta e nero. Questo è un sistema
SOTTRATTIVO, perché il colore percepito è dato dalla sottrazione di luce e dall’aumento di pigmento, al
contrario dell’RGB.
Qui il valore minimo è il bianco della carta dato dall’assenza di pigmento, CMYK (0, 0, 0, 0); il valore massimo
è il nero ricco, CMYK (100, 100, 100, 100).
! RICORDA BENE ! Lo spazio colore CMYK ha un’estensione minore rispetto all’RGB. Durante quindi il
passaggio dal digitale alla stampa alcuni colori, soprattutto quelli più saturi potrebbero risentirne.
GREY SCALE invece, è uno spazio colore con un solo canale, dove ogni pixel può assumere solo 255 valori
di luminosità dal nero (0) al bianco (255). È ovviamente lo spazio colore ottimale per immagini fotografiche
in bianco e nero.
*PDF
Formato sviluppato da Adobe, multi-pagina, multipiattaforma, misto raster e vettoriale, utilizzabile sia per
l’anteprima a video con compressione sia per stampa di alta qualità (no compressione). Prevede i principali
spazi colore. Può includere al suo interno elementi multimediali di qualsiasi genere e una vastissima gamma
di utility interne, come visualizzazione delle Tambnails, link multimediali e ipertestuali, note di editing e
possibilità di work group. È attualmente il formato più esteso e flessibile per la pubblicazione di documenti
grafici e multimediali. Non ha senso salvare immagini raster in PDF a meno che non sia esplicitamente
richiesto. È meglio utilizzato nel caso ci sia necessità di visualizzare dati vettoriali, per far convivere immagini
raster e vettoriali o per generare file multi-pagina.
LA MACCHINA DI TURING
Nel 1936 il matematico inglese Alan Turing proposte l’idea di una macchina ideale/immaginaria che fosse
capace di eseguire ogni tipo di calcolo su numeri e simboli. Una macchina di Turing è definita da un insieme
di regole che definiscono il comportamento della macchina su un nastro di input/output. Il nastro può essere
immaginato di lunghezza infinita, diviso in celle. Ogni cella contiene un simbolo, oppure è vuota. La macchina
ha una testina che si sposta lungo il nastro, leggendo, scrivendo o cancellando i simboli nelle celle del nastro.
La macchina analizza il nastro una cella alla volta. Ad ogni istante di tempo la macchina si trova in uno stato
interno ben determinato, risultato dell’elaborazione compiuta sui dati letti. Lo stato interno varia a seconda di
tre componenti: il numero della cella osservata, il suo contenuto, l’istruzione da eseguire.
Si distinguono principalmente tre stati, una configurazione iniziale prima dell’esecuzione del programma, una
configurazione finale al termine dell’esecuzione del programma, delle configurazioni intermedie.
Sostanzialmente è un modello di calcolo per dare risposta ai problemi di decisione ed è usato nella teoria della
calcolabilità e nello studio della complessità degli algoritmi.
IL COMPUTER ENIAC
Il computer Enical (elettronic numerical integrator and computer) è il quarto computer elettronico digitale della
storia ed il quarto computer Turing completo della storia. Soprattutto è il primo computer elettronico general
purpose, ovvero adatto ad una moltitudine di impieghi e non specializzato. Nasce nel 1946 negli USA.
Occupava una stanza di 9x30 metri, impiegava 18 mila valvole, utilizzava il sistema decimale e l’input era di
schede di carta perforate.
L’algoritmo è concetto fondamentale dell’informatica: è alla base della calcolabilità, ovvero, un problema è
calcolabile quando è risolvibile mediante un algoritmo. Inoltre, è concetto cardine nella fase di
programmazione. Preso un problema da automatizzare e risolvere la programmazione costituisce la traduzione
di un algoritmo per quel tale problema in un programma scritto in un certo linguaggio che può essere poi
effettivamente eseguito da un calcolatore.
I LINGUAGGI DI PROGRAMMAZIONE
Un linguaggio di programmazione è un linguaggio formale che specifica un insieme di istruzioni che possono
essere usate per produrre dati in uscita dai dati in entrata. Tutti i linguaggi di programmazione sono definiti da
un determinato lessico, una sintassi e una semantica e possiedono svariate istruzioni, ovvero comandi che
cambiano lo stato interno del calcolatore.
I SISTEMI OPERATIVI
Un sistema operativo è un software di base che contiene componenti software necessarie per il corretto
funzionamento del computer, sia nella gestione delle risorse hardware sia nella gestione dei software. È
responsabile del controllo e della gestione delle risorse di sistema (CPU e memorie) e dell’esecuzione dei
programmi eseguiti su di esso, assegnandovi le necessarie risorse.
Sono composti da parti standard:
• Kernel = gruppo di funzioni fondamentali strettamente interconnesse con l’hardware ed eseguite con
privilegio massimo. Compito di fornire ai moduli del sistema operativo e ai programmi in esecuzione
un accesso controllato all’hardware.
• Scheduler = componente che permette di eseguire più processi contemporaneamente.
• Gestione input-output e periferiche
• Gestione di memoria
• Interfaccia utente
• Sicurezza tramite antivirus e firewall