fondamenti di informatica 1 - uniroma2.it · fondamenti di informatica - 1 esercizi a.a. 2011/2012....
TRANSCRIPT
![Page 1: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/1.jpg)
Fondamenti di Informatica - 1
Esercizi
A.A. 2011/2012
![Page 2: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/2.jpg)
Esercizio
![Page 3: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/3.jpg)
Esercizio
![Page 4: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/4.jpg)
Esercizio
![Page 5: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/5.jpg)
Esercizio
![Page 6: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/6.jpg)
Esercizio
Dato il numero
11000000111100000000000000000000
rappresentato secondo lo standard floating point IEEE 754 determinare il corrispondente valore decimale.
![Page 7: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/7.jpg)
Soluzione
Dato il numero
11000000111100000000000000000000
rappresentato secondo lo standard floating point IEEE 754 determinare il corrispondente valore decimale.
Soluzione
1 1000 0001 111 0000 0000 0000 0000 0000s esponente mantissa
-1 * (1.mantissa) * 2(esponente-127)
-1 * (1.111) * 2(129-127)
-1 * (1.111) * 2(2) = -111.1 = -7.5
![Page 8: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/8.jpg)
EsercizioCalcolare gli estremi degli intervalli di definizione dei numeri
secondo lo standard IEEE 754 a 32 bit considerando le
configurazioni speciali dell’esponente .
mantissa
esponente
00000000 11111111
00000……000 Zero ±∞
≠00000…..000 Numero
denormalizzato
NaN
![Page 9: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/9.jpg)
SoluzioneCalcolare gli estremi degli intervalli di definizione dei numeri
secondo lo standard IEEE 754 a 32 bit considerando le
configurazioni speciali dell’esponente .
Più grande normalizzato: ~±2128
X 11111110 11111111111111111111111
± 2127 ~2 (1.11111……11 ≈ 2 )
Più piccolo normalizzato: ±2-126
X 00000001 00000000000000000000000
± 2-126 1 (1.00000…..0 )
Più grande denormalizzato: ~ ±2-126
X 00000000 11111111111111111111111
± 2-126 ~ 1 (0.111111...1 ≈ 1)
Più piccolo denormalizzato: ±2-149
X 00000000 00000000000000000000001
± 2-126 2-23 (0.00...1= 2-23 )
Soluzione:(-2128,-2-149] [2-149,2128)
![Page 10: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/10.jpg)
SoluzioneCalcolare gli estremi degli intervalli di definizione dei numeri
secondo lo standard IEEE 754 a 32 bit considerando le
configurazioni speciali dell’esponente .
Più grande normalizzato: ~±2128
X 11111110 11111111111111111111111
± 2127 ~2 (1.11111……11 ≈ 2 )
Più piccolo normalizzato: ±2-126
X 00000001 00000000000000000000000
± 2-126 1 (1.00000…..0 )
Più grande denormalizzato: ~ ±2-126
X 00000000 11111111111111111111111
± 2-126 ~ 1 (0.111111...1 ≈ 1)
Più piccolo denormalizzato: ±2-149
X 00000000 00000000000000000000001
± 2-126 2-23 (0.00...1= 2-23 )
Soluzione:(-2128,-2-149] [2-149,2128)
![Page 11: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/11.jpg)
EserciziConvertire in binario i seguenti numeri in base 10:
1. 0.510 =
2. 0.2510 =
3. 0.12510 =
4. 0.062510 =
![Page 12: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/12.jpg)
SoluzioneConvertire in binario i seguenti numeri in base 10:
1. 0.510 = 0.12
2. .2510 = 0.012
3. .12510 = 0.0012
4. .062510 = 0.00012
![Page 13: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/13.jpg)
Svolgimento esercizi 1 e 4
1)0.510
.5*2=1 parte intera=1 parte frazionaria restante =0
.510 = (.1)2
4)0.062510
.0625*2= 0.125 parte intera=0 parte frazionaria restante=0.125
.125*2=0.25 parte intera=0 parte frazionaria restante=0.25
.25*2=0.5 parte intera=0 parte frazionaria=0.5
.5*2=1 parte intera=1 parte frazionaria = 0
.062510 = (.0001)2
21/03/2012 13
![Page 14: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/14.jpg)
EsercizioConvertire in binario i seguenti numeri decimali
a) 17.562510 =
b) 26.187510 =
![Page 15: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/15.jpg)
a) 17.562510
Per la parte intera:
17/2=8 resto 1
8/2=4 resto 0
4/2 = 2 resto 0
2/2 = 1 resto 0
1/2 = 0 resto 1
(17)10 = (10001)2
Per la parte decimale:
.5625*2= 1.125 parte intera=1 parte frazionaria restante=0.125
.125*2=0.25 parte intera=0 parte frazionaria restante=0.25
.25*2=0.5 parte intera=0 parte frazionaria=0.5
.5*2=1 parte intera=1 parte frazionaria = 0
.562510 = (.1001)2
Sommando i risultati 17.562510 = (10001.1001)2
21/03/2012 15
Soluzione
![Page 16: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/16.jpg)
21/03/2012 16
b) 26.187510
Per la parte intera:
26/2=13 resto 0
13/2=6 resto 1
6/2 = 3 resto 0
3/2 = 1 resto 1
1/2 = 0 resto 1
(26)10 = (11010)2
Per la parte decimale:
.1875*2= 0.375 parte intera=0 parte frazionaria restante=0.375
.375*2=0.75 parte intera=0 parte frazionaria restante=0.75
.75*2=1.5 parte intera=1 parte frazionaria=0.5
.5*2=1 parte intera=1 parte frazionaria =0
.187510 = (.0011)2
Sommando i risultati 26.187510 = (11010.0011)2
Soluzione
![Page 17: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/17.jpg)
Esercizio
Data una parola di memoria di 32 bit organizzata come in figura:
1 bit per il segno,
8 bit per l'esponente rappresentato in codice eccesso 28-1
23 bit per la mantissa compresa tra 1 e 2 (standard IEEE754)
Trovare la rappresentazione binari del numero 331,6875
21/03/2012 17
![Page 18: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/18.jpg)
Soluzione
Il bit del segno sarà 0 in quanto N è positivo
Trasformo la parte intera del numero (ignorando il segno) in binario = 101001011
Trasformo la parte frazionaria (mantissa) del numero in binario =1011
Metto insieme la parte intera e frazionaria ottenendo il numero in virgola fissa.
101001011. 1011
Normalizzo il numero in virgola fissa ottenendo un numero che inizia per 1,... moltiplicato per
2spostamenti_virgola . Se sposto la virgola a sinistra l'esponente sarà positivo, se sposto la virgola a
destra l'esponente sarà negativo, se non la sposto l'esponente sarà zero.
1.010010111011*28
La parte dopo la virgola del numero normalizzato corrisponderà ai bit della mantissa. Se i bit
sono di meno rispetto a quelli della codifica (23 in questo esempio) saranno aggiunti degli zeri
fino ad arrivare al bit 23, se sono di più saranno ignorati i bit successivi al 23esimo.
Si somma K all'esponente ottenuto = 127+8=135 10 = 100001112, dove
K=2bit_esponente-1-1 .
Il nuovo esponente è stato convertito in binario naturale a 8 bit (perché in precisione singola
abbiamo 8 bit di esponente).
Il risultato sarà: [1bit segno][8bit esponente][23bit mantissa]
0 10000111 10010111011000000000000
21/03/2012 18
![Page 19: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/19.jpg)
21/03/2012 19
Rappresentare secondo lo standard IEEE 754 i seguenti valori:
a) 1.0
b) -1
c) 2
d) 0.5
e) 0.666666
f) 3.141593
Esercizi - Standard IEEE 754
![Page 20: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/20.jpg)
Soluzione
Rappresentare secondo lo standard IEEE 754 i seguenti valori:
a) 1.0
• 0 01111111 0000000 00000000 00000000
b) -1
• 1 01111111 0000000 00000000 00000000
c) 2 = 1 × 21
• 0 10000000 0000000 00000000 00000000
d) 0.5 = 1 × 2-1
• 0 01111110 0000000 00000000 00000000
e) 0.666666
• 0 01111110 0101010 10101010 10101010
f) 3.141593
• 0 10000000 1001001 00001111 11011100
21/03/2012 20
![Page 21: Fondamenti di Informatica 1 - uniroma2.it · Fondamenti di Informatica - 1 Esercizi A.A. 2011/2012. Esercizio. Esercizio. Esercizio. Esercizio. Esercizio ... Convertire in binario](https://reader031.vdocumenti.com/reader031/viewer/2022021913/5c69b2bc09d3f25e418b4746/html5/thumbnails/21.jpg)
Svolgimento esercizio a)a)1.0
Poiché il numero è positivo il primo bit è 0
Scriviamo il numero 1.0 in forma binaria ed è 1.0, spostiamo il . verso sinistra
lasciando un solo 1 alla sua sinistra e otteniamo 1.0*20
La mantissa è la parte a destra del punto fino a riempire i 23 bit:
00000000000000000000000
L’esponente è pari a 0 ma dobbiamo adattarlo allo standard quindi 0+127 = 127 che
in binario è rappresentato con 1111111
Quindi la soluzione è:
0 01111111 0000000 00000000 00000000
21/03/2012 21