Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
ARITMETICA BINARIA
2
Rappresentazione Binaria
Un numero binario è un vettore di n bit: B = bn-1 bn-2….. b1 b0 con bi {0,1} con 0 i n-1 questo vettore rappresenta valori interi positivi V(B) {0,2n-1} V(B) = bn-1 • 2n-1+…..+ b1 • 21+ b0 • 20
3
Rappresentazione Numeri con segno
Modulo e Segno Complemento a 1 Complemento a 2
4
Addizione di numeri positivi
xi yi ci si ci+1 1 si= xi yi ci + xi yi ci + xi yi ci + xi yi ci ci+1= xi yi ci + xi yi ci + xi yi ci + xi yi ci = yi ci + xi ci + xi yi
5
Struttura di un Sommatore
si= xi yi ci + xi yi ci + xi yi ci + xi yi ci xi yi ci si
6
Struttura di un Sommatore
ci= yi ci + xi ci + xi yi xi yi ci ci+1
7
Sommatore a propagazione di riporto
xi yi si ci ci+1 Adder x0 y0 s0 c0 c1 Adder x1 y1 s1 cn-1 ….. xn-1 yn-1 sn-1 cn c2
8
??? Prestazioni Operazione di somma in un ciclo di clock
Clock = 100 Mhz Ciclo = 10 ns Ritardo ci e ci+1 = 1 ns Ritardo per p.l. = 0.5 ns Tempo x 32 bit = (31x1)+1.5 = 32.5ns > 10ns ??? Adottare una tecnologia più veloce Struttura di rete logica più efficiente
9
Rete logica + efficiente
si= xi yi ci + xi yi ci + xi yi ci + xi yi ci ci+1= yi ci + xi ci + xi yi ci+1= xi yi + (yi + xi )ci G = funzione di generazione Gi= xi yi Pi= (yi + xi ) P = funzione di propagazione ci+1= Gi + PiGi-1 + Pi Pi-1Gi-2 + ….. + Pi Pi-1 …. P1G0 + Pi Pi-1 …. P0c0
10
Sommatore ad anticipo di riporto
c4= G3 + P3G2 + P3 P2G1 + P3 P2 P1G0 + P3 P2 P1P0c0 x3 x2 x1 x0 Adder c0 c4 s3 s2 s1 s0 x3 s1 c0 c4 Adder x2 x1 x0 s0 s2 s3 x7 s5 c8 x6 x5 x4 s4 s6 s7 ….. x31 s29 c31 c32 x30 x29 x28 s28 s30 s31
11
Addizione e sottrazione con segno
SOMMA sommare bit a bit le rappresentazioni dei due addendi ignorando il riporto dalla posizione più significativa. DIFFERENZA sommare il numero con il complemento a 2 del sottraendo. Risultato [-2n-1, 2n-1 –1] OVERFLOW
12
OVERFLOW Per numeri positivi il riporto è un indicatore di overflow
Non valido per aritmetica con segno Verificare per : (+7) + (+4) e (-4) + (-6) Regole per l’overflow si verifica quando si sommano numeri concordi in segno il riporto non è sufficiente
13
Condizione di Overflow
Se i due addendi hanno segno concorde l’overflow si verifica quando la somma ha segno diverso da Quello degli addendi OVERFLOW = xn-1 yn-1sn-1 + xn-1 yn-1sn-1
14
Moltiplicazione tra numeri positivi
Molt.do Parz. m q ci-1 ci s A Molt.ore m7 m6 m0 m5 m4 m3 m2 m1
15
Algoritmo di Booth Si verifica con le seguenti regole scorrendo il numero binario Da destra a sinistra bit i+1 bit i x Moltiplicando x “” x “” x “” Es:
16
Codifica a coppie di bit
Risultato 1 +1 +2 -2 -1 Es:
17
Divisione tra interi n-1 n-1 Registro A Quoziente Left shift Sommatore
n-1 n-1 Registro A Quoziente Left shift Sommatore a n bit Macchina Sequenziale di controllo Add/Sub Divisore n-1
18
Rappresentazione Floating Point
Un numero binario è un vettore di n bit: B = bn-1 bn-2….. b1 b0 con bi {0,1} con 0 i n-1 questo vettore rappresenta valori interi positivi V(B) {0,2n-1} V(B) = bn-1 • 2n-1+…..+ b1 • 21+ b0 • 20
19
Rappresentazione Floating Point
B = bn-1 bn-2….. b1 b0. B = b0. b-1….. b - (n-2) b- (n-1) V(B) = -b0 • 20+…..+ b-(n-2) • 2-(n-2)+ b-(n-1) • 2-(n-1) Rappresenta numeri nell’intervallo: -1 V(B) 1 –2-(n-1)
20
Rappresentazione Floating Point
Come Interi: [-231, 231] [-2.15 x 109, x 109 ] Come floating point: [ -1, ] [-1, 1[ con precisione fino a 4.66 x 10-10
21
Rappresentazione Floating Point
m0. m1 m2 m3 m4 m5 m6 x 10 xy Rappresenta numeri: [-1.0 x 1099 , 1.0 x 1099] Con 32 bit: 8 bit 23 bit esponente excess-127 mantissa Bit segno
22
Rappresentazione Floating Point
Single Precision (1038 con mantissa a 7 cifre decimali): 8 bit 23 bit esponente excess-127 mantissa Bit segno Double Precision (10308 con mantissa a 16 cifre decimali): 11 bit 52 bit esponente excess-1023 mantissa Bit segno
23
Operazioni Floating Point
Somma e differenza Prende il numero con esponente più piccolo e shiftare la mantissa a sinistra un numero di volte pari alla differenza dei due esponenti 2. Assegnare al risultato l’esponente più grande Eseguire la somma o la differenza tra le mantisse 4. Normalizzare il risultato
24
Operazioni Floating Point
Prodotto: Sommare gli esponenti e sottrarre 127 2. Prodotto delle mantisse Normalizzare il risultato
25
Operazioni Floating Point
Divisione: Sottrarre gli esponenti e sommare 127 2. Divisione delle mantisse Normalizzare il risultato
26
Chopping (approssimazione polarizzata (biased)):
Da 0. b-1 b-2 b a 0. b-1 b-2 b-3 111 0. b-1 b-2 b-3 Arrotondamento di Von Neumann (approssimazione unbiased): Se 0. b-1 b-2 b b-1 b-2 b-3 Se 0. b-1 b-2 b-3 xxx con almeno un x=1 0. b-1 b-2 1
27
Standard IEEE per operazioni Floating Point
Approssimazione Arrotondamento: Se 0. b-1 b-2 b-3 xyz se x=0 allora 0. b-1 b-2 b-3 Se 0. b-1 b-2 b-3 xyz se x=1 allora 0. b-1 b-2 b Errore da –1/2 a +1/2 Standard IEEE per operazioni Floating Point
28
PROCESSORI A CONFRONTO
29
Processor Performances
30
Processor Performances
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.