Concetti base di informatica. Processo e algoritmo Con tale termine si intende indicare l'attività...
-
Upload
lorenza-marra -
Category
Documents
-
view
212 -
download
0
Transcript of Concetti base di informatica. Processo e algoritmo Con tale termine si intende indicare l'attività...
Concetti base di informatica
Processo e algoritmo
Con tale termine si intende indicare l'attività di esecuzione di un compito o algoritmo.
La ricetta di una pietanza rappresenta l'algoritmo da seguire
Nel momento in cui comincio a realizzare la ricetta, eseguo un processo
In informatica quindi il processo è la fase di esecuzione di un algoritmo di una procedura
Processore
È un dispositivo elettronico, presente nei calcolatori, in grado di eseguire algoritmi e quindi di fare cose
Se chiedo al computer di fare una serie di calcoli Excel allora sarà il processore che li esegue realmente
Se chiedo al computer di creare un filmato dalle mie foto delle vacanze, è il processore che materialmente esegue la creazione (rendering) del filmato.
Numerazione binaria
Il calcolatore lavora in aritmetica binaria basata su sole due simboli, 0 ed 1.
La sua elettronica è infatti basata su elementi bistabili cioè in grado di assumere due posizioni diverse ON ed OFF
Pertanto esso è predisposto all'uso dell'aritmetica a due simboli, mentre noi siamo abituati ad usare quella a 10 simboli (0,1,2... 9).
I numeri in aritmetica binaria Un numero in aritmetica binaria ha solo i due
simboli 0 e 1 per cui appare cosi:
1001010
A cosa corrisponde tale numero?
Esiste la seguente tabella:
Il computer esaurisce subito la 1° cifra in quanto può usare solo 2 simboli
Il numero 9 usa addirittura 4 cifre binarie
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
9 1001
Aritmetica binaria
È ovvio che il calcolatore scrive numeri con “molte più cifre” delle nostre
A parità di valore il numero in aritmetica binaria è più lungo
9 1001
Aritmetica posizionale
In entrambe le “aritmetiche” il valore di un numero aumenta se spostiamo a sinistra un simbolo:
1070 7010
Il numero “7100” usa gli stessi simboli “7”, “1” e “0” di “1070” ma vale di più.
Quindi la posizione del “7” incide sul valore del numero
Aritmetica posizionale Il motivo è questo: ogni posizione ha un suo “peso”: la prima sono
le unità, la seconda le decine, la terza cifra sono le centinaia.
1070 è pari ad 1 migliaio più 7 decine, quindi:
1070=1*103+7*101
Mentre 7010 è pari a 7 migliaia e 1 decina:
7010=7*103+1*101
(potenze di 10 perché l'aritmetica è decimale)
Morale: il valore del numero dipende dalla posizione dei simboli
Aritmetica posizionale
Anche l'aritmetica binaria è posizionale
Il numero 5 e 6 hanno entrambi 2 simboli “1” ed un simbolo “0” ma hanno posti diversi!
Vale che:
110 = 1*22+1*21
(Potenze di 2 perché l'aritmetica è binaria)
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
9 1001
Aritmetica posizionale
110 = 1*22+1*21
(Potenze di 2 perché l'aritmetica è binaria)
Il numero sopra è effettivamente equivalente a 6 (sei) infatti:
110 = 1*22+1*21 =
= 4 + 2 = 6
0 0
1 1
2 10
3 11
4 100
5 101
6 110
7 111
8 1000
9 1001
Conversione di base
Si scrive che:
(110)2 = (6)
10 Dove il pedice 2 ed il pedice 10 indicano in che base è da
intendersi il numero.
In altre parole il numero 110 iscritto in base 2 è pari al numero 6 scritto in base 10 cioè quella che usiamo di solito.
Conversione di base
Per fare la conversione di base si usa la regola: “somma di potenze di 2”, cioè si sommano le potenze di 2 ciascuna moltiplicata per la cifra corrispondente.
Esempi :
111 = 1*22+1*21+1*20 = 4+2+1= 7
10110 = 1*24+1*22+1*21 =16+4+2= 22 Quindi 7 nel primo caso e 22 nel secondo.
Potenze di 220 = 1
21 = 2
22 = 4
23 = 8
24 = 16
25 = 32
26 = 64
27 = 128
28 = 256
Mano mano che aumenta l'esponente, i valori raddoppiano.
Conversione in binario
Per ottenere un numero in binario si effettua la
divisione ricorsiva per
2 Si prende il numero dalla colonna dei resti
Il numero si deve leggere dal basso verso l'alto
137 Resti
68 1
34 0
17 0
8 1
4 0
2 0
1 0
0 1
1 0 0 0 1 0 0 1
Verifica
A quanto equivale questo numero?... dobbiamo convertirlo in decimale e dovremmo trovare 137.
10001001 = 1*20+1*23+1*27 =
= 1 + 8 + 128 = 137
1 0 0 0 1 0 0 1
Esercizi:
1100 = 1*22+1*23 = 4+8=12
1101 = 1*20+1*22+1*23 = 1+4+8=13
10000001 = 1*20+1*27 = 128+1=129
10000010 = 1*21+1*27 = 128+2=130 Per abbreviare, contate da sinistra
1,2,4,8,16,32,64,128 ... :
10000010 = 128+2=130
10001100 = 128+8+4=140
Variabili binarie e connettivi logici
Una variabile può contenere un numero binario
a = 11011
E le variabili binarie 0 / 1 possono essere sostituite da Vero / Falso
Sulle variabili binarie posso applicare le operazioni di somma, prodotto, sottrazione, divisione come per l'algebra decimale
Inoltre esistono i seguenti “connettivi logici”:
“e”, “o”, “non”
Connettivi “o”
“O” sta per “oppure” e il connettivo “o” si scrive tra due variabili in questo modo:
a O b
A seconda dei valori di “a” e “b” il connettivo vale:
a b a O b
F F F
F V V
V F V
V V V
Connettivi “o”
a Or b
Quando tale connettivo è vero? “O” sta per oppure, dunque (a Or b) è vera se “a” oppure “b” è vera
a b a O b
F F F
F V V
V F V
V V V
Connettivi “e”
a AND b
Quando tale connettivo è vero? “AND” sta per “e”, “entrambi”, dunque (a AND b) è vera se entrambe, contemporaneamente “a” e “b” sono vere
a b a AND b
F F F
F V F
V F F
V V V
Connettivi “non”
a NOT b
Quando tale connettivo è vero? “NOT” sta per “non”, dunque (Not b) è vera quando “b” è falso
b NOT b
F V
V F
Espressioni logiche
F = b OR (a AND b)
Questa è una espressione con connettivi logici e variabili binarie (dette anche booleane)
Si risolve costruendo la tabella della “Verità” corrispondente:
a b a AND b F
F F F F
F V F V
V F F F
V V V V
F è la OR tra la seconda colonna e la terza
Porte logiche
Ognuno dei 3 connettivi logici AND, OR, NOT si rappresenta con una “porta logica”
AND
OR
NOT
Porte logiche
Ogni “porta logica” ha in ingresso le due variabili a e b ed in uscita il valore del connettivo.
AND
OR
NOT
A a AND bB
A a OR bB
B Not b
Espressioni logiche
F = b OR (a AND b)
Questa espressione è equivalente ad un circuito logico:
Sistema di elaborazione
Le componenti hardware di un S.E. Sono:
CPU - Central Processing Unit (processore) RAM - Memoria centrale INPUT - Dispositivi di input (tastiera) OUTPUT - Dispositivi di output (video, stampanti) HDD - Memoria di massa (DVDdrive, Usb key...)
Le componenti software sono:
I sistemi operativi e di base I software applicativi
Tipi di calcolatori
Tascabili: lettori multimediali, mini controllori
PDA: personal digital assistant (palmari, smartphone, tablet, notebook, desktop pc)
Grandi sistemi di elaborazione: mainframe e supercomputer.
Reti informatiche
Sono su scala locale, metropolitana o sovranazionale.
– LAN, MAN, WAN, GAN La rete Globale si estende su tutto il globo terrestre, esempi
sono
– Internet,
– la rete delle università,
– dei centri di ricerca,
– reti militari.
La CPU
Central Processing Unit
ALU unità aritmetica e logica Esegue i calcoli matematico aritmetici, di logica
Registri: unità elementari di memoria usate per contenere risultati
di operazioni in corso e dati temporanei. CU unità di controllo
Controlla e gestisce lo spostamento dei dati all'interno della CPU
Clock (temporizzatore) Da il tempo a tutte le unità, ad ogni impulso del clock
viene fatto uno spostamento dati o operazione
CPU
Specifiche della CPU
Le caratteristiche di una CPU sono:
La velocità del clock Il numero di “Core” cioè di nuclei interni
Nota bene che:
La velocità varia tra 1GHz e 4 GHz circa
Ghz significa miliardi di Hz impulsi al secondo. I Core sono 1, 2, 4, 6, 8
Ogni CPU possiede al suo interno più CPU collegate a fare il lavoro contemporaneamente.
Dual Core o Quad Core
1 2
3 4
1 2
8 Core al microscopio
1 2 3 4
5 6 7 8
Le memorie
Una memoria RAM è realizzata su schede di forma rettangolare (barrette, dimm) contenenti chip di memoria.
Per avere memorie più grandi:
Uso più chip (4, 8, 16) Uso chip più grandi (128MB, 256MB, 512MB) Uso più bacchette
Termini relativi alle memorie
Chip: scheggia di silicio, rettangolino di plastica in cui è contenuta memoria elettronica.
Pin: contatti elettronici che le bacchette di ram hanno per collegarsi alla scheda madre
Bit e Byte unita di misura della memoria 1 Byte = 8 Bit
KB, MB, GB, TB multipli del Byte
Kb, Mb, Gb, Tb multipli del Bit
Unità di misura
1 Byte = 8 Bit
1 Kbyte = 8 KBit = 1024 Byte = 8192 bit
1 Mbyte = 8 MBit = 1024 Kbyte = 8192 Kbit
1 Gbyte = 8 GBit = 1024 Mbyte = 8192 Mbit
1 Tbyte = 8 TBit = 1024 Gbyte = 8192 Gbit
Ascii estesa
È una tabella con 256 elementi (ASCII estesa) contenente tutti i caratteri alfanumerici, cioè numeri, lettere, simboli, punteggiatura, quindi anche:
@#][^?=)(/&%$£”!ç°°*é:;><
Servono 8 bit per memorizzare informazioni 256 caratteri
Ascii standard
Ha solo 128 caratteri, in figura una porzione.
All'interno della memoria
È come una griglia: ogni quadratino è una cella di memoria e contiene una informazione
Ogni cella può essere di 8bit, 16bit, 32bit, 64bit ed è anche chiamata “parola” o “word”
Alcune memorie sono a “sola lettura” cioè non ci si può aggiungere altre informazioni o modificare le esistenti
cella
cella cella
cella
Schema memoria RAM
Parametri memorie
Dimensione parola: 8bit, 16bit, 32bit, 64bit
Capacità della memoria (4GB, 8GB, 16GB)
Modalità di accesso: solo lettura o r/w
Volatilità: alcune memorie funzionano anche se non alimentate da corrente, altre no
Velocità: si misura in nano-secondi (access time)
Frequenza: si misura in MHz
Indirizzo
Per trovare un dato in una cella di memoria (word) bisogna conoscerne l'indirizzo
Anche gli indirizzi sono espressi in bit
Ram e Rom
La ROM (readly only memory) è di sola lettura
La RAM (random access memory) è di scrittura e lettura
Una ROM è ad uso esclusivo dell'hardware (della scheda grafica, della mainboard, delle periferiche), non è per inserirci dati e ne contiene pochi (128Kb, 256MB).
Questo vuol dire che non si può salvare alcun dato in una ROM
Non è una memoria di massa
Non è gestita dal sistema operativo
Altre memorie
La memoria CACHE è inserita tra la cpu e la ram
È più veloce della RAM e quasi quanto il processore
Operazioni con i numeri binariOperazioni con i numeri binari
Somma di numeri binari
Regole della somma:
0+0=0
0+1=1
1+0=1
1+1=0 con riporto di 1
In rosso sono indicati i riporti
1 1 1
1 0 1 0 1 0 +
1 1 1 1 =
-----------------
1 1 1 0 0 1
Esempio di somma
Verifica della somma
1 1 1
1 0 1 0 1 0 +
1 1 1 1 =
-----------------
1 1 1 0 0 1
Convertendo i numeri:
101010=2+8+32=42
1111=1+2+4+8=15
111001=1+8+16+32=57
effettivamente 42+15=57
Sottrazione
Regole:
0-0=0
1-0=1
1-1=0
0-1=1 con prestito da sinistra
Esempio:
0 1 1 1 01 0 0 0 0 1 0 1 - 1 0 1 1 =---------------------0 1 1 1 1 0 1 0
Quando capita la sottrazione 0-1, si segna 1 come risultato e si cambiano tutte le cifre a sinistra fino al simbolo “1
Verifica della Sottrazione
10000101=1+4+128= 133 -
1011=1+2+8= 11 = -----------------------------
01111010=2+8+16+32+64= 122
Esempio:
0 1 1 1 01 0 0 0 0 1 0 1 -
1 0 1 1 =---------------------0 1 1 1 1 0 1 0
Unità di input
Elenco delle più importanti unità di inserimento dati:
1) Mouse
2) Tastiera
3) Touchpad
4) Lettore di codici a barre
5) Stilo
6) Scanner
7) Webcam
8) Digital camera
9) Microfono
Unità di output
Elenco delle più note unità di riproduzione dei dati:
1) Stampante laser, inkjet
2) Plotter
3) Casse acustiche
4) Cuffie
5) Monitor / video
6) Proiettore
Unità input / output
Alcune unità con funzione doppia di i/o:
1) Modem
2) Touchscreen
Osservazioni sulle stampanti
Le stampanti possono essere di 4 o 5 tipi principali:
1) Inkjet (getto di inchiostro)
2) Laser
3) A trasferimento termico
4) Ad impatto
5) Ad aghiGli ultimi due tipi erano molto diffuse fino agli anni 1990-2000.
Osservazioni sulle stampanti
Le stampanti …...
1) sono dotate di una propria memoria a bordo, più ce ne è più pagine riescono a memorizzare per la stampa e più veloci sono
2) sono dotate di un proprio processore: il processore elabora le pagine da stampare e le trasforma da sequenze di bit in ordini per la testina a getto di inchiostro o per il fusore della laser.
3) si connettono al computer tramite cavo e porta di comunicazione. Sono utilizzate la USB e la porta di rete
4) si connettono via wireless tramite bluetooth o wifi
Le memorie di massa
Si chiamano memorie di massa perché:
SERVONO A MEMORIZZARE MASSE DI DATI
Sono memorie:
Permanenti Con elevata capacità Talora estraibili o esterne Meno veloci delle memorie centrali
Memorie di massa
Elenco delle memorie di massa maggiormente note / usate:
Hard disk drive (dischi fissi) Solid state drive (dischi a stato solido) Masterizzatori DVD USB key (pennette) Tape o nastri Masterizzatori CDROM Memorie SD / Compact flash
Catridge
Hard disk drive
Al suo interno il disco rigido possiede uno o più piatti
I piatti sono di tipo metallico e magnetizzabili Un braccio meccanico si sposta sul piatto che gira Alla punta vi è una elettrocalamita L'elettrocalamita magnetizza il piatto A seconda della polarità si ha 1 o 0 Tutto questo è controllato da un “controller” cioè un
processore
Hard disk drive
Hard disk drive
controllerPiatto rotantee testina
Piatto del HDD
Il disco del HDD è di plastica ricoperto di uno strato metallico – magnetico.
Quando viene costruito, viene fatta la “formattazione fisica” con la quale si creano:
1) Tracce (cerchi)
2) Settori (spicchi)
3) Blocchi
Come funziona il HDD
Per leggere i dati sul disco rigido succede che:
1 passo: posizionamento della testina sulla traccia 2 passo: rotazione del piatto sotto la testina 3 passo: lettura dei dati sul/sui blocchi.
12
Capacità = 500GB, 1 TB, 2 TB..... 4TB
Tempo di accesso =
Seek time → posizionamento della testina
+
Latency → giro del disco
+
Transfer rate → lettura/scrittura
Formattazione
La formattazione serve a ripulire il disco rigido o l'unità di memoria di massa.
2 tipi formattazione:
Formattazione fisica
Formattazione logica
Viene fatta la quando è costruito il drive
Consiste nel creare tracce, settori, cluster
Serve a creare cartelle e file, ripulisce il disco da tutti i dati vecchi, cancella ogni tato.
Incisione laser DVD - CD
DVD e CDrom drive-masterizzatori
Scrivono su un disco di plastica sparando un laser su di esso che lo “brucia”
creando buchi (PIT) = 1
oppure non creandoli (LAND) = 0
PITbuco
LANDpiatto
Velocità di un CDROM drive
I primi drive avevano velocità tali da poter scrivere/leggere 150KB ogni secondo …
poi le velocità sono raddoppiate, quadruplicate …
Velocità
1x = 150 KB/sec
2x = 300 KB/sec
….......
32x = 4800 KB/sec = 4,69MB/sec
48x = 7200 KB/sec = 7,03 MB/sec
HDD vs CDrom
Velocità a confronto:
100 MB/sec 10 MB/sec
Cassette a nastro magnetico
Servono per fare il backup dei dati Sono cassette con nastro avvolgibile
Capacità elevata 1TBVelocità molto bassa
Costo basso (15€)
SVANTAGGIO
La cassetta va avvolta ogni volta fino al
punto in cui c'è il programma che serve
Porte ed interfacce
Porta seriale: trasmettere i bit uno per volta su un'unica linea ad alta velocità, creata molti anni fa, è ora in disuso nei computer da ufficio
Porta seriale: trasmettere i bit uno per volta su un'unica linea ad alta velocità, creata molti anni fa, è ora in disuso nei computer da ufficio
Porta parallela: trasmette più bit per volta (8 o 16 per volta) anche essa è in disuso sui pc per ufficio, serviva per le stampanti
Porta parallela: trasmette più bit per volta (8 o 16 per volta) anche essa è in disuso sui pc per ufficio, serviva per le stampanti
Porta USB: trasmette i bit in serie ma ad alta velocità
Porta USB: trasmette i bit in serie ma ad alta velocità
Software
SoftwareDi base
SoftwareApplicativo
Sistemi operativi Programmi scritti dall'utente
Driver Tools software
Linguaggi e compilatori
Programmi applicativi
Release o versioni
Ogni software viene rilasciato una prima volta e poi aggiornato in versioni successive:
Alcune delle versioni di Windows sono:
Windows 3.0 Windows 95 Windows 98 Windows Me Windows XP Windows 7 Windows 8
I sistemi operativi
Funzioni del sistema operativo:
Gestione del
processore, memoria centrale, memoria di massa, periferiche,
Interfaccia verso l'utente
3 tipi di interfaccia utente
GraficaA menù
Testuale
GUIGrafic user interface
CLICommand line interface
Linguaggi di programmazione
Licenza softwareShareware
software condiviso a tempo o in forma limitata.
Shareware
software condiviso a tempo o in forma limitata.
Open source
software libero e modificabile nel codice sorgente
Freeware
software libero non modificabile