Upload
vuongkien
View
216
Download
0
Embed Size (px)
Citation preview
1
Abilità Informatiche
Fabio Massimo Zanzotto
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Cosa vedremo nelle lezioni
• Perché nozioni di informatica e sopratutto perché nozioni di fondamenti dell’informatica?
• Mattoni base– Algoritmo, modello per risolvere problemi– Rappresentazione dell’informazione– Architettura del calcolatore
• Costruzioni sovrastanti– Sistema operativo– Reti di calcolatori e WWW– Programmi applicativi
Nozioni di informatica e di fondamenti di informatica
Perché?
2
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un documento Word
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un documento Word, vi sembra differente?
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un documento Word, vi sembra differente?
3
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un e-mail ricorrente
Domanda:
come la poniamo nella cartella Iscrizioni?
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un e-mail ricorrente….
Regole di classificazione
• Come si specificano?
• Che cosa consentono di fare?
Linguaggio per descrivere algoritmi per la macchina “ricevitore di posta elettronica”
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Una presentazione animata
4
Problemi ed Algoritmi
Algoritmo: Modello per risolvere i problemi
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Problemi ed Algoritmi
• Domanda fondamentale: Cos’è un problema e quando è risolubile?
• Esempio di Problema e Processo di risoluzione
• Definizione di algoritmo
• “Processo di soluzione=Esecutore+Algoritmo”
• Parametrizzazione dei problemi
• Un algoritmo più complesso: – Sommare di due numeri
– Trovare il massimo comun denominatore tra due numeri
• Storia… la pascalina (1642)
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Domanda fondamentale
Cos’è un problema e quando è risolubile?
Andiamo per esempi…
Problema
Un contadino ha venduto Kg 125 di uva a 0,55 € al chilogrammo e con il ricavo ha acquistato 3 metri di stoffa pagandola 15,80 € al metro.
Quale somma gli è rimasta?
5
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Soluzione del problema (1)
Soluzione
0,55 €/kg×125kg= € 68,75 RICAVO UVA VENDUTA
15,80 €/m×3m= € 47,40 SPESA STOFFA
€ 68,75- €47,40 = €21,35 SOMMA RIMASTA
RISULTATO
Al contadino rimangono €21,35
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Soluzione del problema (2)
Attenzione… c’è anche una Procedura Risolutiva
Passi della procedura
1) Si moltiplichi la quantità di uva venduta per il prezzo al Kg: ottengo così il ricavo
2) Si moltiplichi la quantità di stoffa acquistata per il prezzo al metro, ottenendo così la cifra spesa.
3) Si sottragga dal ricavo la cifra spesa. Il risultato così ottenuto è la somma rimasta al contadino.
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Procedura Risolutiva: osservazioni
• Ricercare ed esprimere una procedura risolutiva è un atto creativo completamente distinto dalla attività “Meccanica” delle azioni volte a raggiungere il risultato finale.
• Per risolvere il precedente problema, non è sufficente essere capaci di eseguire le quattro operazioni
6
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Procedura Risolutiva: Algortimo
Definizione:
• Un algoritmo (o procedura risolutiva) specifica come ottenere il risultato finale mediante una sequenza di istruzioni (Ordini).
Si faccia attenzione:
• Un algoritmo non è l’ esecuzione materiale delle azioni volte a raggiungere il risultato finale è affidata ad un esecutore
• L’esecuzione delle azioni atte ad eseguire un algoritmo è detto processo
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Procedura Risolutiva: sistemiamo i ruoli
Algoritmo
Esecutore Risultato
Risolutore Problema
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Primo mattone importante: Parametrizzazione
Osservazione:
L’algoritmo per il precedente esempio risolve solo il problema posto.
Per raggiungere un ulteriore livello di generalizzazione possiamo far presente come esistano problemi per i quali uno stesso elenco di istruzioni può servire a condurre alla soluzione di problemi che differiscono solo per le informazioni iniziali (parametri).
7
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Parametrizzazione: ritorniamo all’esempio
Andiamo per esempi…
Problema
Un contadino ha venduto Kg 125 di uva a 0,55 € al chilogrammo e con il ricavo ha acquistato 3 metri di stoffa pagandola 15,80 € al metro.
Quale somma gli è rimasta?
Procedura
Somma= 125*0,55-3*15,80
Andiamo per esempi…
Problema
Un contadino ha venduto Kg X di uva a Y € al chilogrammo e con il ricavo ha acquistato Z metri di stoffa pagandola K € al metro.
Quale somma gli è rimasta?
Procedura
Somma= X*Y-Z*K
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Procedura Risolutiva con parametri
Algoritmo
Esecutore Risultato
Risolutore Problema
Risultato
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Processi, Algoritmi ed Istruzioni
PRO CESSO ALGORITMO TIPICAISTRUZIO NE
L’atto di preparazionedi un dolce
Ricetta Prend i 3 uova; aggiu ngi 30gdi zucchero
L’atto di suonare una sinfonia Sp artito mu sicale
L’atto di costruzione diun modello di aeroplano
Istruzioni di assemblaggio Incolla il p annello Acon la struttura B
8
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un altro algoritmo: somma di due numeri
1. Incollare a destra i due numeri
2. Considerare le cifre della colonna più a destra
3. Assumere inizialmente il riporto uguale a O
4. Sommare le cifre della colonna in considerazione e aggiungere il riporto
5. Se il risultato ottenuto eseguendo la istr.4 è < 10 scrivere la cifra risultante nella colonna in considerazione, assegnare al riporto il valore O e andare all’istr.7
6. Se il risultato ottenuto eseguendo la istr.4 è ≥ 10 sottrarre 10. Scrivere la cifra risultante nella colonna in considerazione, porre il riporto =1 eandare alla istr.7
7. Spostarsi sulla colonna immediatamente a sinistra, se non vi sono cifre ed il riporto = 0 fermati altrimenti vai all’istr.8
8. Andare all’istr.4
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un altro algoritmo: MCD
• Problema:
Determinare il M.C.D. di due numeri naturali dati diversi da 0
• Algoritmo M.C.D. 1
1. Si scompongono i due numeri in fattori primi
2. Si prendono in considerazione i soli fattori comuni
3. Dall’elenco di fattori comuni ottenuti nei passi di esecuzione dell’istr.2 si considerino quelli con l’esponente più piccolo
4. Si moltiplicano fra di loro i fattori individuali nei passi di esecuzione dell’istr.3 - il risultato è il M.C.D cercato.
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Un altro algoritmo: MCD (euclide)
• Problema:
Determinare il M.C.D. di due numeri naturali dati diversi da 0
• Algoritmo Euclide (1)
1. Dividere il primo numero per il secondo. Chiamare R il resto della divisione
2. Se R=0 hai finito: il secondo numero è il M.C.D.
3. Se R≠0 si operino i seguenti cambiamenti:
primo numero ←←←← secondo numero;
secondo numero ←←←← R.
4. Torna all’istr.1.
9
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Osservazioni
• Risolvere problemi richiede– Algoritmo
– Esecutore
• Diversi problemi richiederanno algoritmi diversi …
• Lo stesso problema ammette algoritmi diversi
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ricapitoliamo
• Un algoritmo e’– Una sequenza
– ... finita
– di passi (o istruzioni)
– che risolve un problema (parametrico) dato
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Storia… la pascalina
10
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Storia… la macchina per fare la maglia
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ricapitoliamo
Ingredienti attuali:
• Algoritmo
• Parametro
Cosa Manca?
• Come codifichiamo le azioni ed i parametri?
• Come passiamo ad un risolutore generale di problemi?
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
L’elaborazione dell’Informazione
• Dato un esecutoreΩ ...
• in grado di riconoscere (eseguire) un insieme (generale) di istruzioni
• e di Dati Iniziali (Argomenti)
• e data una sistematica rappresentazione dei dati e delle procedure risolutive
• ... ΩΩΩΩ e’ un risolutore generale di problemi!
11
Rappresentazione dell’Informazione
Codificare per computare e fare
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dell’Informazione
Questioni di rappresentazione• Rappresentazione: essenza• Tipi di rappresentazione• Cosa ci interessa rappresentare in un algoritmo per
produrre una macchina in grado di elaborarlo?Idee fondamentali• Tutto è un rappresentato da un alfabeto• Tutto è un numero se numerabile• Importanza strategica della rappresentazione
binaria
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione
• Una rappresentazione si stabilisce tra – unoggetto da rappresentare(significato) ed
– un simbolo(potenzialmente complesso) che lo rappresenta(significante)
Il bimbo che gioca con un sasso lo identifica a seconda della situazione con un’arma o con un’auto
12
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione
• Espressivita’
• Univocita’ (===> Biettivita’ !!)
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Cani
Dogs
...
Rappresentazione: arbitrarietà
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Tipo di Rappresentazione: iconica
13
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Tipo di Rappresentazione: analogica
0
30
60100
200
130
Km/h
30
60
t
Km/h
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
10.0020.0030.0060.00t
Km/h
... ...1020
60
Tipo di Rappresentazione: digitale
(0, 10,…, 20,…, 60,…)
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
10.0020.0030.0060.00t
Km/h
... ...1020
60
Tipo di Rappresentazione: simbolica
(0, 10,…, 20,…, 60,…)
14
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Cosa vogliamo rappresentare
Cosa ci interessa rappresentare in un algoritmo per produrre una macchina in grado di elaborarlo?
• Parametri di ingresso
• Dati parziali
• Azioni/Istruzioni
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione Simbolica di Informazioni
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione Simbolica di Informazioni
• Dati Numerici– Numeri Naturali
– Numeri Interi (con segno)
– Numeri Razionali
• Dati non Numerici– Caratteri
– Testo
– Grafica
Dipende dall’alfabeto usato!
15
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei numeri naturali
• Numeri Naturali– Alfabeto, A
• Un insieme finito di B simboli, A=a, b, ….
– Sequenzeo Stringhe in A, A*
• n-ple, (a0, …, an-1) con ai∈A, ed n>=0
– Valore, cioe’ la funzione di rappresentazione:val : A* → N
data da: val((a0, …, an-1)) =
B e’ detta Base
=
n
i
ii Ba
0
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Alfabeti e Stringhe
• Esempio: Alfabeto A A = aA* = a, aa, aaa, aaaa, aaaaa, … ;
oppure:A = a, bA* = a, b, aa, ab, ba, bb, aaa, aab, aba,
baa, abb, …
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione come funzione
Sia N l’insieme dei numeri naturali 0, 1, 2, … . • Una rappresentazione di N è una funzione
iniettiva
r : N → A*• che possiede la funzione inversa (valore)
val : A* → N• tale che, data σ∈A*,
val(σ) =
∈altrimenti indefinito
=r(n) sen σ N
16
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei numeri naturali
• Numeri Naturali - Base 10– Alfabeto, A=0,1,2,3,…,9
– Sequenzeo Stringhe in A, A*
• es. (197) = 197, (1389) = 1389
– Valore, val((a1, …, an)) =
es. val(197)= 7*100 + 9*101 +1*102
val(1389)= 9*100 + 8*101 +3*102 +1*103
=
n
i
iia
0
10
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei numeri naturali
• Numeri Naturali - Base 8– Alfabeto, A=0,1,2,3,…,7
– Sequenzeo Stringhe in A, A*
• es. (127) = 127, (13) = 13, 183 e’ NON VALIDA!!
– Valore, val((a0, …, an)) =
es. val(127)= 7*80 + 2*81 +1*82=7+16+64=87val(13)= 3*80 + 1*81 = 11
(127)8=(87)10 (13)8=(11)10
=
n
i
iia
0
8
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei numeri naturali
• Numeri Naturali - Base 2– Alfabeto, A=0,1
– Sequenzeo Stringhe in A, A*
• es. (101) = 101, (10) = 10, 13 e’ NON VALIDA!!
– Valore, val((a0, …, an)) =
es. val(101)= 1*20 + 0*21 +1*22=1+4=5val(10)= 0*20 + 1*21 = 2
(101)2=(5)10 (10)2=(2)10
=
n
i
iia
0
2
17
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei numeri naturali
• Numeri Naturali - Base 16– Alfabeto, A=0,1, .., 9, A,B,C,D,E,F– Sequenzeo Stringhe in A, A*
• es. (10E4) = 10E4 1G3 e’ NON VALIDA!!
– Valore, val((a0, …, an)) =
ES. val(10E4) = 4*160 + 14*161 +1*163=
= 4+ 224 + 4096=4324
(10E4)16=(4324)10
=
n
i
iia
0
16
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei numeri con la virgola
• Numeri con la virgola - Base 2– Alfabeto, A=0,1– Sequenzeo Stringhe in A, A*
• es. (10.1) = 10.1 10.3 e’ NON VALIDA!!
– Valore, val((a-m,,... a0, …, an)) =
ES. val(10.1) = 1*2-1+ 0*20 + 1*21 =
= 0.5 + 0 + 2 = 2.5
(10.1)2=(2.5)10
−=
n
mi
iia 16
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione dei caratteri
Ciascun simbolo di un insieme di caratteri può essere rappresentato dal numero naturale che rappresenta la posizione del carattere nell’alfabeto
Simbolo a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5Posizione 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
18
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione Binaria
La rappresentazione binaria è importante perchè si hanno oggetti bistato stabili (transistor)
Con questi oggetti si possono creare:
Parole di memoria di dimensione fissa, o rappresentazione su k bit
che avranno un Max e Min numero rappresentabile
Le parole di memoriarappresenteranno:
• numeri
• caratteri
Rappresentare numeri interi e reali con alfabeti binari
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoModulo e segno
– Modulo e segno
Bit del segno Rappresentazione binaria del modulo
Es. rms(5) = 000101 Es. rms(-5) = 100101
Approfondimento
19
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
– Complemento a una base B (su h cifre)
Bh
Bh
2
Bh
20 -1
- Bh
2 0
Z
N
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
– Complemento a una base B (su h cifre)
rc(x) =
≤
≤
0<x2
hB- se )x-h(BBr
2
hB<x0 se (x)Br
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
• Interi con segno– Complemento alla base 2 (su h cifre)
rc(x) =
≤−=
−=≤
0<x2
h2- se )x-h(2r
2
h2<x0 se (x)r
2
2
12
12
h
h
Approfondimento
20
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
• Interi con segno (Esempio)– Complemento alla base 2 (su 4 cifre)
– rc(x) =
≤−=
=≤
0<x2
2- se )x-(2r
2
2<x0 se (x)r
44
2
4
2
8
8
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
• Interi con segno (Esempio)– Complemento alla base 2 (su 4 cifre)
– Sia x = (5)10, si ha 0<5<8 quindi
– rc(x) =
– rc(x)= r2(x) = (0101)
≤−=
=≤
0<x2
2- se )x-(2r
2
2<x0 se (x)r
44
2
4
2
8
8
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
• Interi con segno (Esempio)– Complemento alla base 2 (su 4 cifre)
– Sia x = (-5)10 si ha -8<-5<0 quindi
– rc(x) =
– rc(x)= r2(24-|x|) = r2(16-|-5|)= r2(11)=(1011) 2
≤−=
=≤
0<x2
2- se )x-(2r
2
2<x0 se (x)r
44
2
4
2
8
8
Approfondimento
21
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di interi con segnoComplemento
• Interi con segno - Min e Max– Complemento alla base 2 (suk cifre)
– MIN: (100…0)
– MAX: (011…1)
– Es. k=7 MIN = (1000000) ==> (-27-1)=-64
– MAX = (0111111) ==> (27-1 -1)=63
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola fissa
Bit del segnoRappresentazione binaria della parte intera
Es. rms(2.5) = 00010.10.. Es. rms(-2.5) = 10010.10..
Rappresentazione binaria della parte decimale
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola fissa
• Numeri Razionali - modulo e segno
– Quanti diversi numeri posso rappresentare?
k bit per la parte intera e h per la parte decimale
===> ho 2(k+h) numeri diversi
Es. k=2 h=5 ===> ho 27 = 128 numeri razionali diversi
Approfondimento
22
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola fissa
• Numeri Razionali - modulo e segno
– Quale max e min ?
k bit per la parte intera
===> min = 0 max = 2k -1
h per la parte decimale===> min = 0 max = 1- 2h
Es. k=2 h=5 ===> min = 0 max= (2k -1)+(1- 2-h)=3.96875
Parte Intera
Parte Decimale
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola fissa
• Numeri Razionali - modulo e segno
– Qual è la distanza tra due numeri razionalirappresentati?
Se hoh bit per la parte decimale
===> r(x) - r(xsucc) = 0…0,0….1=2-h
Es. k=2 h=5 ===> r(x) - r(xsucc) = (0.00001)2=2-5= (0.03125)10
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola fissa
• Numeri Razionali - modulo e segno– Qual è la distanza tra due numeri razionali
rappresentati?
Se hoh bit per la parte decimale
===> r(x) - r(xsucc) = 0…0,0….1=2-h
Es. k=2 h=5 ===> r(x) - r(xsucc) = (0.00001)2=2-5= (0.03125)10
x xsucc
Approfondimento
23
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
• Interpretazione del numero in virgola mobile:
x = ±mBe
segno Rappresentazione binaria della mantissa
Rappresentazione binaria dell’esponente
Es: 123,45 = 0,12345*103
rvm(123,45) =<+, 12345,3>X=0,000045 = 0,45*10-4
rvm(x) =<+, 45,-4>
em0/1
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
x = ±m2e
m edehanno dimensione fissa, h ek rispettivamente
e: min=(10..0)= -2k-1
max=(01..1)= 2k-1-1
segno Mantissa (h) Esponente (k)
em0/1
m: min= (1…0)=2-1
max= (1…1)=2h-1
ComplementoNormalizzazione
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
• Numeri Razionali - Virgola Mobile
– x = ±m2e
– m edehanno dimensione fissa, h ek rispettivamente
e: min=(10..0) = -2k-1
max=(01..1) = 2k-1-1
segno Mantissa (h) Esponente (k)
em0/1
m: min= (1…0) = 2-1
max= (1…1) = 2h-1
x: min= mmin2emin=2-1•2-2k-1 =2 -2k-1 -1
x: max= mmax2emax= (2h-1) •22k-1 -1
Approfondimento
24
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
x = ±m2e
segno Mantissa (h) Esponente (k)em0/1
x: min= mmin2emin=2-1•2-2k-1 =2 -2k-1 -1
x: max= mmax2emax= (2h-1) •22k-1 -1
Per h=2, k=5 x: min=2-1•2-2k-1 =2 -2k-1 -1 =2 -24 -1 =2 -17
x: max= (2h-1) •22k-1 -1 = 3 •216 -1 = 3•2 15
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
Due numeri successivi
x = ±m2e xsucc= ±m’2e’
hanno lo stesso esponente ee mantisse me m’ successive
x = ±m2e xsucc= ±msucc2e
m: (1…0)=2-1 msucc= (10..1)=2-1+2-h
==>x-xsucc= (m-msucc)e=(0..01)e= 2-h eeMIN
eMAX
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
Distanza tra due numeri successivi
x = ±m2e xsucc= ±msucc2e
hanno lo stesso esponente e e mantisse m e m’ successive
m: (1…0)=2-1 msucc= (10..1)=2-1+2-h
==>x-xsucc= (m-msucc)e=(0..01)e= 2-h eeMINeMAX
x xsucc x xsucc
...
Approfondimento
25
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Rappresentazione di numeri razionaliVirgola mobile
Il formato IEEE x = ±m2e
con
h = 23
k = 8
segno Mantissa (h) Esponente (k)
em0/1
x: min 2-1•2-2k-1 = 2 -2k-1 -1 = 2 -27 -1 = 2 -129
x: max (2h-1) •22k-1 -1 = (223-1 )•2127 = !!!
Es. (13.25)10 => 0 10111000000000000000000 11111100
Approfondimento
F.M.Zanzotto, R.Basili Abilità InformaticheFacoltà di Lettere e Filosofia
University of Rome “Tor Vergata”
Ricapitolazione: Rappresentazione dell’Informazione
Questioni di rappresentazione• Rappresentazione: essenza• Tipi di rappresentazione• Cosa ci interessa rappresentare in un algoritmo per
produrre una macchina in grado di elaborarlo?Idee fondamentali• Tutto è un rappresentato da un alfabeto• Tutto è un numero se numerabile• Importanza strategica della rappresentazione
binaria