Informatica - algoritmi
Sequenza di azioni che, con dati in input, risolvono un problema scoperti da un esecutore.
Insieme di azioni (istruzioni).
Insieme di operazioni.
Corrispondenza univoca fra azioni e operazioni. Semantica al linguaggio.
Approccio: una informazione per volta.
Il linguaggio ha una sintassi formale.
Programma: algoritmo scritto nel linguaggio del calcolatore: ling. di programmaz.
Calcolatore e un esecutore del mio ling. => ling. di program.
Un algoritmo scritto per un microprocessore e un programma.
Descrivere algoritmi
Termina quando ogni azione può essere eseguita dall'esecutore.
- Fare azioni
- Prendere decisioni
- Fare dei cicli
Cosa serve
- CPU - legge ed esegue il programma (esecutore)
- 3) Tastiera/monitor -> I/O (per interazione)
- Memoria principale RAM: contiene il programma e i dati in cui agisce.
Come sono collegati fra loro: architettura
(Come connettere questi componenti per farli dialogare)
1° Tutti con tutti.
+ : Elevata comunicazione
- : Non scala col n° delle componente (troppi collegamenti)
Informatica algoritmi
Segue una informazione per volta.
Il linguaggio ha una sintassi formale.
Programma: algoritmo scritto nel linguaggio del calcolatore: ling. di programmaz.
Calcolatore è un esecutore del mio ling. ⇒ ling. di programmaz.
Un algoritmo scritto per un microprocessore è un programma.
Descrivere algoritmi
- Fare azioni
- Prendere decisioni
- Fare dei cicli
Termina quando ogni azione può essere eseguita dall'esecutore.
Cosa serve
- CPU: legge ed esegue il programma (esecutore)
- Tastiera/monitor ⇒ I/O (per interazione)
- Memoria principale RAM: contiene il programma e i dati
Come sono collegati fra loro: architettura
(Come connettere questi componenti per farli dialogare)
1º Tutti con tutti:
+: Elevata comunicazione
-: Non scala con n° delle componenti (troppi collegamenti)
2a) Van Newmann
(Schema di base dei calcolatori)
Codice e dati sono nella memoria principale RAM.
Unico bus che connette tutti i dispositivi.
+: Facilmente estendibile (aggiungo/tolgo facilmente dispositivi) facilmente standardizzabile.
-: Saturazione del bus quando dispositivi ↑ (limite del bus = quando è impegnato in una comunicazione tra 2 dispositivi, nessun altro può comunicare).
Soluz: architettura multibus: posso trasferire dati da un hard disk all'altro senza occupare il bus principale.
3a) Harvard
La CPU con un bus di I/O + bus che va alla RAM codice + bus "" "" RAM dati.
+: ↑ prestazioni (posso fare 3 trasferimenti contemporaneamente)
Sistema multicore (più CPU).
Il calcolatore digitale
Il calcolatore è un dispositivo digitale → può assumere solo 2 valori: 0, 1.
Perché?
Il transistor si comporta come un interruttore comandato da Vin.
Aperto: Vin = 0 perché non scorre corrente quindi Va = Vcc.
Chiuso: Vin > Va allora Vv = 0 perché è un corto circuito.
TH:
Qualsiasi funzione logica può essere implementata da AND, OR, NOT.
Calcolatore: macchina che sa fare AND, OR, NOT in maniera velocissima (es: 8 miliardi di AND, OR, NOT).
Ingressi e uscite finiti: • enumerabile e si può rappresentare come cascata di AND e OR.
Memoria principale (RAM) + Registri (interni) CPU {Dispositivi volatili → mantengono il contenuto se aumentata}
Memoria secondaria o di massa (grosso volume di dati) HDD − Pen USB {Non volatili → mantengono l'informazione anche quando si spegne il calcolatore meno costosa ma più lenta}
Hard-Disk
Memorizzazione digitale (0,1) mod 0 mod 1
Dispositivo di memoria di massa di tipo magnetico per l'archiviazione dei dati.
Come è fatto?
- Ogni piatto si compone di anelli concentrici numerati: tracce
- Settori: la più piccola quantità di informa tra la CPU e il disco.
Il disco gira => la testina magnetica raggiunge la traccia (seek time) e attende il settore.
Sistema operativo
• Sistema operativo:
(Software) programma che gestisce l'I/O e le funzionalità del computer, offrendo all’utente una interfaccia semplificata.
Funzioni:
- Gestione del disco (memoria di massa);
- “” Dispositivi;
- “” Utenti
- “” Dei processi.
Gerarchie di memoria
• Gerarchie di memoria
La CPU lavora con i registri di conteggio per una copia dei dati.
(Sono nella CPU)
Registri
RAM
HDD
L.