La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

27+ 12= --- 39 Risultato troppo grande 27+12 64-39 = 25 -25 64-25= 39 = -25 errore di overflow in binario 011011+ 001100= ------- 0100111 011000011000.

Presentazioni simili


Presentazione sul tema: "27+ 12= --- 39 Risultato troppo grande 27+12 64-39 = 25 -25 64-25= 39 = -25 errore di overflow in binario 011011+ 001100= ------- 0100111 011000011000."— Transcript della presentazione:

1 27+ 12= --- 39 Risultato troppo grande 27+12 64-39 = 25 -25 64-25= 39 = -25 errore di overflow in binario 011011+ 001100= ------- 0100111 011000011000 riporto I due ultimi riporti sono diversi

2 37+ 52= --- 89 Risultato troppo piccolo (-27)+(-12) 89-64 = 25 = 25 errore di overflow -27 64-27= 37 -12 64-12= 52 in binario 100101+ 110100= ------- 1011001 100100100100 riporto I due ultimi riporti sono diversi

3 Riporto 100100 x 100101 + y 110100 = ------- s 1011001 x0x0 0 ADD y0y0 s0s0 x1x1 y1y1 s1s1 x2x2 y2y2 s2s2 x3x3 y3y3 s3s3 x4x4 R5R5 y4y4 s4s4 x5x5 y5y5 s5s5 R4R4 R3R3 R2R2 R1R1 R6R6 R5R5 X Bit di overflow

4 due fatti importanti: una somma dà overflow se e solo se i riporti in colonna n ed n-1 sono diversi Se non cè overflow allora basta buttare leventuale bit in colonna n del risultato (ovvero lultimo riporto) per ottenere il risultato corretto

5 Rappresentazione decimale e binaria dei razionali 5 : 4 = 1,25 10 20 0 5454 1,25 10 in binario 101 100 101 : 100 = 1,01 100 0 1,01 2 parte intera binaria parte frazionaria binaria parte intera decimale parte frazionaria decimale

6 7 : 3 = 2,33.. 10 1 7373 in binario 111 11 111 : 11 = 10,01001001.. 0100 100 2,333.. 10 = 2,3 10 10,0100100.. 2 = 10,010 2

7 7 : 5 = 1,4 20 0 7575 in binario 111 101 111 : 101 = 1,0110001000.. 1000 110 1000 110 1000 1,4 10 1,0110001000.. 2 = 1,011000 2

8 3,141592.... 10 in binario ?

9 REALE BINARIO cosa significa una parte frazionaria binaria: 0,1101001 2 -1 + 2 -2 + 2 -4 + 2 -7

10 0,1101001 moltiplicarlo per 2 significa spostare la virgola di un posto a destra 1,101001 2 -1 2 -2... 2 0 2 -1.......

11 se abbiamo un reale in base 10: ad esempio 0,99 come troviamo la sua rappresentazione in base 2? Ragioniamo come segue: supponiamo che 0,99 = 0,b 1 b 2 b 3...b k (binario) allora 2 0,99 = 1,98 = b 1,b 2 b 3...b k quindi b 1 è 1 e 0,98 è rappresentato da 0,b 2 b 3...b k

12 per trovare la rappresentazione binaria di un decimale lo moltiplichiamo per 2 ed osserviamo se 1 appare nella parte intera: 0,59 2= 1,18 0,18 2= 0,36 0,36 2= 0,72 0,72 2= 1,44 0,44 2= 0,88 0,88 2= 1,76....... 0,100101... dipende da quanti bit abbiamo a disposizione rappresentazione binaria di 0,59

13 esempio 18,59 18 10010 0,59 0,100101... 10010,100101....

14 Rappresentazione dei Reali in un computer 1 8 23 s e+127 m Rappresenta: x = s 2 e · 1,m implicito Siccome 0 e 255 sono speciali: 1 e+127 254 quindi -126 e 127

15 1 0010,100101......, e = 4 00010100101...........10000011 127+4 = 131=10000011 2

16 12,65 1100, ??? 0,65 2 = 1.30 0,30 2 = 0.60 0,60 2 = 1.20 0,20 2 = 0.40 0,40 2 = 0.80 0,80 2 = 1.60 ….. 101001... esempio di rappresentazione in virgola mobile:

17 1100,101001... 1100,101001... = 2 3 1,100101001... mantissa = 1,100101001... esponente 3 e quindi 3+127 = 130 esponente = 10000010 segno = 0 0 10000010 100101001...

18 - 0,0011001... 0,0011001... = 2 -3 1,1001... mantissa = 1,1001... esponente -3 e quindi -3+127=124 esponente = 01111100 segno = 1 1 01111100 1001...

19 Rappresentazione dei Reali piccoli 1 8 23 s 0 m Rappresenta: x = s 2 -126 0,m implicito 0 0,m < 1 quindi -2 -126 < x < 2 -126

20 Rappresentazione dei Reali grandi 1 8 23 s 255 0 Rappresenta: Si può ottenere come risultato di qualche operazione aritmetica (es: divisione per 0). Se lo si usa come operando in una operazione aritmetica si ha un errore.

21 quanti reali si rappresentano? con una parola, cioè 32 bits possiamo rappresentare 2 32 cose, quindi al più 2 32 reali, la novità è che questi valori non sono distribuiti uniformemente come gli interi ma sono maggiormente concentrati in vicinanza dello 0 e si diradano sempre più allontanandosi dallo 0.

22 Distribuzione disuniforme h=2 bits di mantissa e k=3 di esponente. Rappresentazione dellesponente: 0 000 00 = 0 000 01 = 0 000 10 = 0 000 11 = 0 001 00 = 0 001 01 = 0 001 10 = 0 001 11 = 0 010 00 = 0 010 01 = 0 010 10 = 0 010 11 = 0 2 -2 ·2 -2 2 -2 ·2 -1 2 -2 ·(2 -1 +2 -2 ) 2 -2 ·1 = 4/32 2 -2 ·(1+2 -2 ) 2 -2 ·(1+2 -1 ) 2 -2 ·(1+2 -1 +2 -2 ) 2 -1 ·1 2 -1 ·(1+2 -2 ) 2 -1 ·(1+2 -1 ) 2 -1 ·(1+2 -1 +2 -2 ) = 0 = 0.0625 = 0,125 = 0,1875 = 0,25 = 0,3125 = 0,375 = 0,4375 = 0,5 = 0,625 = 0,75 = 0,875

23 2 0 ·1 2 0 ·(1+2 -2 ) 2 0 ·(1+2 -1 ) 2 0 ·(1+2 -1 +2 -2 ) 2 1 ·1 2 1 ·(1+2 -2 ) 2 1 ·(1+2 -1 ) 2 1 ·(1+2 -1 +2 -2 ) 2 2 ·1 = 4 2 2 ·(1+2 -2 ) 2 2 ·(1+2 -1 ) 2 2 ·(1+2 -1 +2 -2 ) 2 3 ·1 2 3 ·(1+2 -2 ) 2 3 ·(1+2 -1 ) 2 3 ·(1+2 -1 +2 -2 ) 0 011 00 = 0 011 01 = 0 011 10 = 0 011 11 = 0 100 00 = 0 100 01 = 0 100 10 = 0 100 11 = 0 101 00 = 0 101 01 = 0 101 10 = 0 101 11 = 0 110 00 = 0 110 01 = 0 110 10 = 0 110 11 = 0 111 00 = = 1 = 1,25 = 1,5 = 1,75 = 2 = 2,5 = 3 = 3,5 = 4 = 5 = 6 = 7 = 8 = 10 = 12 = 14 =

24


Scaricare ppt "27+ 12= --- 39 Risultato troppo grande 27+12 64-39 = 25 -25 64-25= 39 = -25 errore di overflow in binario 011011+ 001100= ------- 0100111 011000011000."

Presentazioni simili


Annunci Google