Sei sulla pagina 1di 2

Informatica Teoria

Algoritmi
LInformatica la scienza che i metodi di gestione dei dati: lutilizzo di macchine, in
particolare di calcolatori, permette una gestione automatizzata di unenorme mole di
dati.
Lelaborazione di dati finalizzata alla risoluzione di un problema che
inizialmente schematizzato attraverso un algoritmo, cio un insieme di passi
elementari eseguibili dalla macchina che portano alla risoluzione del problema.
Tale algoritmo svolto dalla macchina principalmente attraverso 3 operazioni banali:
-

La sequenza ordinata di funzioni


La possibilit di compiere operazioni in base alla validit di premesse, che
possono essere unicamente vere o false (es. se x allora y altrimenti z)
La possibilit di ripetere unazione fintantoch una premessa resti valida (es.
finch x allora y)

Un algoritmo che risolve un problema ha due caratteristiche fondamentali: la


correttezza, che dipende dalla capacit dellalgoritmo di prevedere ogni possibile
situazione implementabile dallutente, e lefficienza, che data dal numero di passi da
compiere per arrivare alla soluzione.
La correttezza imprescindibile, lefficienza auspicabile.

Programmi
Un programma limplementazione su macchina di un determinato algoritmo
risolutivo di un problema. Esso costituito da passi elementari eseguiti dalla
macchina: per la realizzazione di un programma necessario dunque partire da un
algoritmo generico composto da passi non-elementari, dettagliati poi in passi
elementari eseguibili dal calcolatore.
Il passaggio da algoritmo a programma fatto attraverso la programmazione. Essa
effettuata attraverso linguaggi di programmazione che si suddividono in: linguaggi
ad alto livello e linguaggi a basso livello.
Un linguaggio ad alto livello (come il C) pi distante dal linguaggio reale della
macchina, che composto unicamente da codice binario, invece un linguaggio a
basso livello (come lassembler) pi vicino al linguaggio della macchina.
Ogni linguaggio ha una sua sintassi (come si scrive) e una sua semantica (cosa si
scrive, cio cosa fa realmente il programma una volta eseguito).

Compilatori ed Interpreti

Per passare dal linguaggio di programmazione al linguaggio macchina necessario


luso di un compilatore o di un interprete. Un compilatore traduce tutte le righe di
codice in un programma eseguibile dalla macchina (cio scritto in linguaggiomacchina). Un interprete traduce il codice riga per riga e lo esegue.
In realt ogni Sistema Operativo ha un proprio linguaggio-macchina di sistema in cui
viene compilato o interpretato il codice sorgente in un codice poi convertito dal
Sistema Operativo in linguaggio-macchina reale, ma per semplicit si pu dire che le
due cose coincidano.
Schematizzando:
Algoritmo linguaggio di programmazione Codice Sorgente compilazione
Eseguibile

Introduzione al C
I programmi in C utilizzano contenitori detti funzioni.
Una funzione pu contenere un unico valore per volta, se viene inserito un nuovo
valore questo cancella il valore precedente.