vuoi
o PayPal
tutte le volte che vuoi
MACCHINA DI VON NEUMANN
E’ l’architettura di calcolatore “general purpose” (quindi di applicabilità generale), ideata intorno al 1940, basata
sull’ipotesi fondamentale che i dati e le istruzioni operanti su di esso siano codificabili in uno stesso formato. Il
programma non è più quindi una parte hardware del sistema ma diventa software conferendo una grande versatilità a
questa nuova architettura.
Essa si compone di tre sottosistemi (+ il sistema d’interconnessione):
- SOTTOSISTEMA DI MEMORIZZAZIONE: memorizza istruzioni e dati. Si compone dell’Hard Disk (memoria di
archiviazione) e della RAM;
- SOTTOSISTEMA DI ELABORAZIONE: esegue in modo sequenziale tutte le istruzioni passando dall’una all’altra.
Esso si compone della CPU (Central Processing Unit);
- SOTTOSISTEMA DI INTERFACCIA: gestisce l’input dei dati verso il calcolatore (mediante mouse, tastiera,
microfono) e l’output dei risultati dell’elaborazione verso gli utenti (con monitor, casse audio, stampante).
Permette inoltre di trasmettere e ricevere informazioni anche da altri calcolatori e di acquisire informazioni
dall’ambiente (con dei sensori) e operare sull’ambiente (con attuatori);
MODI D’USO DEL CALCOLATORE
Le funzioni del calcolatore sono andate via via modificandosi infatti inizialmente esso era adibito unicamente al calcolo
mentre ora è lo strumento prediletto per l’elaborazione e la trasmissione di informazione. Si è passati così alla
confluenza di due settori inizialmente separati, ossia l’IT (Information Technology) e le telecomunicazioni, nell’ICT
(Information and Communication Technology), la cui importanza è evidenziata dal successo del World Wide Web.
Ci sono tre tipi di utilizzo di un calcolatore:
- Interazione utente – calcolatore = il PC viene utilizzato per la risoluzione di un problema grazie ad un
programma o per il semplice accesso ad un archivio salvato in locale;
- Interazione utente – calcolatore – calcolatore remoto = il proprio PC viene utilizzato per accedere ad un
secondo calcolatore in rete col primo per la risoluzione remota di un problema (es. Word attraverso internet)
o per l’accesso ad archivi remoti (es. Wikipedia);
- Interazione utente – calcolatore – calcolatore remoto – altro utente = scambio di documentazione (mail) o
risoluzione cooperata di un problema. Essa può essere sincrona (chat) o asincrona (e-mail);
INFORMAZIONE E SUPPORTO
INFORMATICA = scienza della rappresentazione e dell’elaborazione dell’informazione;
L’informazione esiste solamente se esiste un supporto sul quale essere trasmessa ( ci può essere l’inchiostro ma se non ho dove
). Non bisogna confondere l’informazione col supporto in quanto esso è solo lo strumento
scrivere non posso “informare”
attraverso cui l’informazione può passare. Va inoltre detto che la STESSA informazione può essere trasmessa su
supporti DIVERSI ( ) così come uno STESSO supporto può portare
10 scritto su un foglio, 10 palline, 10 tacche su una scala graduata
informazioni DIVERSE.
Un supporto per poter portare informazione deve poter assumere almeno due configurazioni e per interpretare tali
configurazioni è necessario conoscere un codice che mi permetta di decodificare l’informazione. Senza la conoscenza
del codice una stessa configurazione mi può portare diversi significati ( –
come . nel codice Morse dove li posso interpretare come
). La configurazione a due assume il
1) punto linea; 2) lettera A; 3) messaggio corrispondente alla lettera A, ad esempio attuare piano A
ruolo di “unità elementare” d’informazione e prende il nome di BIT (binary unit).
- CODIFICA = operazione con cui l’informazione viene scritta su un supporto;
- DECODIFICA = operazione con cui l’informazione viene recepita dall’utente;
LA CODIFICA BINARIA: introduzione
Per non incorrere in ambiguità di linguaggio l’alfabeto utilizzato dei calcolatori (Linguaggio macchina) si compone di
due simboli 0 e 1 (visti come simboli, non numeri, infatti possono significare qualsiasi cosa), alfabeto che prende il
nome di BINARIO, composto da BIT (8 bit = 1 byte).
- ALGORITMO = descrizione della soluzione di un problema, ossia sequenza finita d’istruzioni operante su dati;
- PROGRAMMA = algoritmo scritto in modo da poter essere eseguito da un calcolatore (linguaggio macchina);
k = [log S]
Dato il numero di elementi da identificare, per conoscere il numero di bit richiesti all’operazione si ha: con
2
“k” = n° bit ed “S” = n° elementi da identificare. Le *+ indicano l’intero maggiore o uguale ad S.
ES. Ho 10 elementi, quanti bit mi occorrono? k = [log 10] = [3,32] = 4
2
Da BASE QUALSIASI (BQ) a BASE 10
n°elemento partendo da 0 e da destra n°elemento partendo da 0 e da dx
Numero = prima cifra da sinistra x BQ + seconda cifra da sx x BQ
BQ
Esempio_Da BASE 2 a BASE 10
5 4 3 2 1 0
101100 = 1 x 2 + 0 x 2 + 1 x 2 + 1 x 2 + 0 x 2 + 0 x 2 = 32 + 0 + 8 + 4 + 0 + 0 = 44 dieci
due
Esempio_Da BASE 4 a BASE 10
3 2 1 0
2302 = 2 x 4 + 3 x 4 + 0 x 4 + 2 x 4 = 128 + 48 + 0 + 2 = 178
quattro dieci
Esempio_Da BASE 16 a BASE 10
2 1 0 2 1 0
F2B = F x 16 + 2 x 16 + B x 16 = 16 x 16 + 2 x 16 + 11 x 16 = 3840 + 32 + 11 = 3883
sedici dieci
Da BASE 10 a BASE 2
Numero in base Divendo in base Quoziente in base Resto in base
dieci dieci dieci dieci
143 : 2 71 1 143 = 10001111
dieci due
71 : 2 35 1
35 : 2 17 1
17 : 2 8 1 REGOLA GENERALE:
8 : 2 4 0 Si continua a dividere
4 : 2 2 0 segnando il quoziente e
il resto a parte. Infine si
2 : 2 1 0 leggono i resti dal basso
1 : 2 0 1
Esempio_Da BASE 10 a BASE 5
Numero in base Divendo in base Quoziente in base Resto in base
dieci dieci dieci dieci
143 : 5 28 3
28 : 5 5 3 143 = 1033
dieci cinque
5 : 5 1 0
1 : 5 0 1
CODIFICA BINARIA DEI NUMERI INTERI (INSIEME Z)
I numeri interi, appartenenti quindi all’insieme Z, si possono rappresentare:
- Codifica modulo e segno = Utilizza il primo bit della successione per il segno (1 negativo; 0 positivo) e i
restanti per la rappresentazione del modulo. Questa codifica permette di rappresentare i numeri compresi
n-1 n-1
fra - 2 + 1 e 2 – 1. Tale codifica ha però un problema: rappresenta il numero 0 in due modi, +0 e -0, come
se essi fossero diversi. n
- Codifica in complemento a due = il numero x è rappresentato dal valore binario naturale corrispondente a 2
+ x, dove n è il numero esatto di bit utilizzati per la codifica. Questa codifica permette di rappresentare i
n-1 n-1
numeri compresi fra - 2 e 2 – 1. Tale codifica risolve così il problema della doppia rappresentazione del
numero 0. La codifica in complemento a due ha due caratteristiche da tenere bene a mente: 1) quando viene
aggiunto uno o più bit per configurare, mi basta aggiungere uno 0 se il primo numero da sinistra è uno 0
oppure un 1 se il primo numero è un 1; 2) Se io ho la codifica in complemento a due per un numero positivo
(o negativo) per trovare il negativo (o positivo) di quel valore mi basta procedere da destra verso sinistra,
1).
tenere fisso il primo 1 e cambiare tutte le cifre successive (1 0 ; 0
ESEMPI (Guardo pagina 34 del libro per chiarimenti con tabella esempio)
+1 = 001 = 0001 -1 = Non Esiste in base due = 1001
A) dieci due ms dieci ms
n 4
B) Per il complemento a due: ho 4 bit per codificare quindi 2 = 2 = 16. Voglio codificare il numero x = +5 dieci
n
quindi 2 + x = 16 + 5 = 21 = 10101 ma siccome i bit disponibili sono solo 4 viene rimosso il primo
dieci dieci dieci due
bit della successione e quindi si ha 5 = 0101 .
dieci C2
C) +72 = 01001000 -72 = 10111000 fino al primo 1 le tengo fisse
dieci c2 dieci c2
NUMERI RAZIONALI (INSIEME Q)
Sono costituiti da un segno, da una mantissa ( ) e da un 10 x ESPONENTE ( ).
cifre più significative del numero positivo o negativo
2 1 0 -1 -2
ES. 101,01 = 1 x 2 + 0 x 2 + 1 x 2 , 0 x 2 + 1 x 2 = 4 + 1 , 0,25 = 5,25
due dieci
OPERAZIONI NELLA CODIFICA BINARIA (TABELLE DELLA VERITA’)
OR 0 1 + 0 1
0 0 1 0 0 1
1 1 1 1 1 0
AND ( x ) 0 1 Le operazioni fra numeri in codifica binaria (la cui codifica è
0 0 0 data da un certo numero di bit) possono andare in contro ad
1 0 1 alcuni problemi come l’OVERFLOW e l’UNDERFLOW
CONFRONTO TRA ANALOGICO E DIGITALE ANALOGICO DIGITALE
È una codifica che stabilisce una relazione di È una codifica che si basa sull’elencazione
DEFINIZIONE analogia tra struttura delle configurazioni e delle corrispondenze valide tra configurazioni
(Modalità di definizione della codifica) struttura delle entità di informazione // La ed entità di informazione // La meta-
meta-informazione è esplicita nel supporto informazione è implicita nella codifica
Non impone alcuna modifica alla regola di Devo o ridefinire la regola stessa oppure
Ridefinizione della codifica al variare codifica concordare il senso delle nuove configurazioni
dell’insieme delle entità d’informazione Si può applicare più ampiamente in quanto a Si può attuare solamente nel caso di
Applicabilità in funzione della cardinalità suo agio anche con insieme non finiti cardinalità finita
dell’insieme delle entità di informazione Si può applicare solamente nel caso sia Si può applicare comunque
Applicabilità in funzione della struttura presente una struttura
dell’insieme delle entità di informazione Si può avere solo nel caso in cui sia presente Si può avere sempre quando il supporto può
Condizioni del supporto un supporto con una struttura adeguata assumere configurazioni diverse
Si danneggia (vedi Disco vinile con polvere) Funziona comunque (Vedi CD con graffi)
Influenza rispetto eventi esterni
Per passare da ANALOGICO a DIGITALE è necessaria una operazione di QUANTIZZAZIONE: prendo una grandezza e la
divido in insiemi (es. pixel = l’immagine è divisa in tanti sottoinsiemi quadrati) associando poi ad ogni insieme un
valore rappresentativo.
Questo tipo di codifica comporta sempre una perdita di informazione in quanto tutti i valori compresi in un certo
sottoinsieme assumeranno un certo valore (rappresentativo). Tuttavia maggiore è il numero di sottoinsiemi che vado
a considerare minore è l’errore cui posso andare in contro.
Va inoltre considerato che per le grandezze variabili nel tempo, come ad esempio una traccia audio, è allora
importante anche i campioni che vado a considerare nell’unità di tempo (CAMPIONAMENTO). Maggiore è il numero di
campioni che vado a considerare minore è l’errore. Il numero di campio