A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf Adder Full AdderFull Adder Sommatori e Sottrattori di due word di n bitSommatori e Sottrattori di due word di n bit
A.S.E.13.2 Richiami Base 2, 8, 10, 16Base 2, 8, 10, 16 Conversione da base N a base 10Conversione da base N a base 10 Conversione da base 10 a base NConversione da base 10 a base N Aritmetica binariaAritmetica binaria Rappresentazione di numeri con segnoRappresentazione di numeri con segno Esempio di minimizzazioneEsempio di minimizzazione Or esclusivoOr esclusivo Tecniche strutturate di minimizzazioneTecniche strutturate di minimizzazione Sintesi a due livelliSintesi a due livelli
A.S.E.13.3 Aritmetica binaria 1 Somma di due bitSomma di due bit x + yx + y s = Sommas = Somma c = Carry (RIPORTO)c = Carry (RIPORTO) EsempioEsempio xysc carry = 206
A.S.E.13.4 Aritmetica binaria 2 Sottrazione di due bitSottrazione di due bit x -yx -y d = Differenzad = Differenza b = Borrow (Prestito)b = Borrow (Prestito) EsempioEsempio xydb borrow = 89xysc
A.S.E.13.5 Numeri binari con segno Il numero massimo di bit usato da un calcolatore è noto e fissoIl numero massimo di bit usato da un calcolatore è noto e fisso Solitamente è : 4 o 8 o 16 o 32 (Word)Solitamente è : 4 o 8 o 16 o 32 (Word) 8 bit formano un Byte8 bit formano un Byte Non esiste un apposito simbolo per il segnoNon esiste un apposito simbolo per il segno Si usa il bit più significativo per indicare il segnoSi usa il bit più significativo per indicare il segno 0 = +0 = + 1 = -1 = - Si hanno varie tecniche di codificaSi hanno varie tecniche di codifica Modulo e segnoModulo e segno Complemento a 1Complemento a 1 Complemento a 2Complemento a 2 In traslazione ( cambia la codifica del segno)In traslazione ( cambia la codifica del segno)
A.S.E.13.6 Varie rappresentazioni su 4 bit Base 10 Mod e seg comp a 1 comp a 2 trasl
A.S.E.13.7 Modulo e segno Se si dispone di n bitSe si dispone di n bit Il corrispondente in base 10 èIl corrispondente in base 10 è Il renge dei numeri risultaIl renge dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E.13.8 Complemento a 1 Se si dispone di n bitSe si dispone di n bit Il corrispondente in base 10 èIl corrispondente in base 10 è Il renge dei numeri risultaIl renge dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E.13.9 Complemento a 2 Se si dispone di n bitSe si dispone di n bit Il corrispondente in base 10 èIl corrispondente in base 10 è Il renge dei numeri risultaIl renge dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E Traslazione Se si dispone di n bitSe si dispone di n bit Il corrispondente in base 10 èIl corrispondente in base 10 è Il renge dei numeri risultaIl renge dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E Trasformazione da numeri positivi a numeri negativi e viceversa Per la rappresentazione in modulo e segnoPer la rappresentazione in modulo e segno Basta cambiare il bit di segnoBasta cambiare il bit di segno Per la rappresentazione in complemento a 1Per la rappresentazione in complemento a 1 Si complementano tutti bitSi complementano tutti bit Per la rappresentazione in complemento a 2Per la rappresentazione in complemento a 2 Si complementano tutti bit e si somma 1Si complementano tutti bit e si somma 1 Per la rappresentazione in tralazionePer la rappresentazione in tralazione Si somma sempre 2 n-1Si somma sempre 2 n-1
A.S.E Tabella Riassuntiva Con riferimento a una word di n bit, si ha:Con riferimento a una word di n bit, si ha: K = 2 n K = 2 n H =2 n-1H =2 n-1 W numero in base 2 da convertireW numero in base 2 da convertire W numero convertitoW numero convertito
A.S.E Complemento a 2 Somma [-2 n-1 <(X+Y)<2 n-1 ]Somma [-2 n-1 <(X+Y)<2 n-1 ] Osservare che K non è possibile rappresentarlo su n bitOsservare che K non è possibile rappresentarlo su n bit *Per X < |Y| il risultato è rappresentato in C. 2 *Per X < |Y| il risultato è rappresentato in C. 2 **Per Y < |X| il risultato è rappresentato in C. 2**Per Y < |X| il risultato è rappresentato in C. 2 ***Il risultato è rappresentato in C. 2***Il risultato è rappresentato in C. 2
A.S.E Esempi Parola di 4 bitParola di 4 bit = 75 + (-3) = 2(-5) + 3 = (-2) = 75 + (-3) = 2(-5) + 3 = (-2) (- 4) +(-3) = =11 (-6) + (-5) =(-11)(- 4) +(-3) = =11 (-6) + (-5) =(-11)
A.S.E Osservazioni Se la word si estende K bit si haSe la word si estende K bit si ha per numeri positivi si aggiungono in testa K zeriper numeri positivi si aggiungono in testa K zeri per numeri negativi si aggiungono in testa K unoper numeri negativi si aggiungono in testa K uno EsempioEsempio Word di 4 bit Word di 6 bit
A.S.E Half Adder Somma di due bitSomma di due bit aiaiaiai bibibibi sisisisi c i aiai bibi sisi H A aiai bibi sisi c i+1
A.S.E Full Adder 1 Somma di due bit compreso il CarrySomma di due bit compreso il Carry cicicici aiaiaiai bibibibi sisisisi c i cici sisi a i,b i cici
A.S.E Full Adder 2 Lo schema risultaLo schema risulta aiai bibi sisi c i+1 cici F A aiai bibi sisi c i+1 cici aiai bibi sisi cici F A
A.S.E Half Subtractor Differenza fra due bit (x – y)Differenza fra due bit (x – y) xixixixi yiyiyiyi didididi b i xixi yiyi didi H S aiai bibi sisi c i+1
A.S.E Full Subcrtactor 1 Differenza fra due bit compreso il Borrow (x – y)Differenza fra due bit compreso il Borrow (x – y) bibibibi xixixixi yiyiyiyi didididi b i bibi didi x i,y i bibi
A.S.E Full Subtractor 2 Lo schema risultaLo schema risulta xixi yiyi didi b i+1 bibi F S xixi yiyi didi b i+1 bibi xixi yiyi didi bibi F S
A.S.E Sommatore a riporto seriale (Ripple-Carry Adder) Somma di due parole di 4 bit in C. 2Somma di due parole di 4 bit in C. 2 c i+1 FA cici aiai sisi bibi b0b0 a0a0 b1b1 a1a1 c i+1 FA cici aiai sisi bibi b2b2 a2a2 c i+1 FA cici aiai sisi bibi b3b3 a3a3 s0s0 s1s1 s3s3 s2s2 c4c4 c0c0 cici aiai sisi bibi c i+1
A.S.E Proprietà dello XOR Lo XOR può essere visto come un inverter programmabileLo XOR può essere visto come un inverter programmabile in S outSinout
A.S.E Considerazioni sulla sottrazione Si ricorda cheSi ricorda che Operando in complemento a 2 si haOperando in complemento a 2 si ha QuindiQuindi
A.S.E Sommatore/Sottrattore In base alle proprietà dello XOR e come si può eseguire la differenza (A – B) in C. 2 si ha:In base alle proprietà dello XOR e come si può eseguire la differenza (A – B) in C. 2 si ha: a0a0 b0b0 a1a1 b1b1 a2a2 b2b2 a3a3 b3b3 s0s0 s1s1 s3s3 s2s2 c4c4 c i+1 FA cici bibi sisi aiai c i+1 FA cici bibi sisi aiai c i+1 FA cici bibi sisi aiai c i+1 FA cici bibi sisi aiai k A –B K=1 A+Bk=0
A.S.E OverfloW Parola di 4 bitParola di 4 bit = 75 + (-3) = 2(-5) + 3 = (-2) = 75 + (-3) = 2(-5) + 3 = (-2) (- 4) +(-3) = =11 (-6) + (-5) =(-11)(- 4) +(-3) = =11 (-6) + (-5) =(-11)
A.S.E Conclusioni Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf Adder Full AdderFull Adder Sommatori e Sottrattori di due word di n bitSommatori e Sottrattori di due word di n bit