A.S.E.3.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 3 Sistema numericoSistema numerico Base 2, 3, 4, 5, 8, 10, 12, 16Base 2, 3, 4, 5, 8, 10, 12, 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
A.S.E.3.2 Sistema Numerico BaseBase Numero di simboli diversi di un sistema numericoNumero di simboli diversi di un sistema numerico Digit (Cifra)Digit (Cifra) ciascun simbolo = DIGIT denota una quantitàciascun simbolo = DIGIT denota una quantità BaseSistemaDigit 2binario 0, 1 3ternario 0, 1, 2 4quaternario 0, 1, 2, 3 5quinario 0, 1, 2, 3, 4 8ottale 0, 1, 2, 3, 4, 5, 6, 7 10decimale 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 12duodecimale 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B 16esadecimale 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
A.S.E.3.3 Notazione Posizionale Per rappresentare una quantità maggiore di quella associata a ciascun digit si usano più digit per formare un numeroPer rappresentare una quantità maggiore di quella associata a ciascun digit si usano più digit per formare un numero La posizione relativa di ciascun digit allinterno del numero è associata ad un pesoLa posizione relativa di ciascun digit allinterno del numero è associata ad un peso N = 587 = 5x x x10 0N = 587 = 5x x x10 0 Notazione posizionaleNotazione posizionale Rappresenta il polinomioRappresenta il polinomio
A.S.E.3.4 Rappresentazione completa Se si usano basi diverse, lo stesso numero rappresenta quantità diverse in funzione della base usataSe si usano basi diverse, lo stesso numero rappresenta quantità diverse in funzione della base usata Si deve quindi indicare la base utilizzataSi deve quindi indicare la base utilizzata EsempiEsempi
A.S.E.3.5 DecimaleBinarioOttaleEsadecimale A B C D E F Tabella
A.S.E.3.6 Conversione in base 10 Direttamente dalla rappresentazione posizionaleDirettamente dalla rappresentazione posizionale ESEMPIO 1ESEMPIO 1 –Convertire il numero 1101 in base 2 nellequivalente in base 10 –Convertire il numero D3F in base 16 nellequivalente in base 10
A.S.E.3.7 Divisione tra Interi La divisione tra interi e definita nel modo seguente:La divisione tra interi e definita nel modo seguente: dati due numeri m e n, loperazione m div n produce due numeri p e q tali che m = np+q, 0 q (n-1) Dati due numeri m e n, si definisceDati due numeri m e n, si definisce |m| n =q (leggesi m modulo n) Teorema: |m| n = |m+kn| nTeorema: |m| n = |m+kn| n Prova: dalla definizione, m+kn = np'+q', p' e q' ottenuti tramite divisione, ma p'=[(m+kn)/n]=[k+m/n]=k+[m/n]=k+p,Prova: dalla definizione, m+kn = np'+q', p' e q' ottenuti tramite divisione, ma p'=[(m+kn)/n]=[k+m/n]=k+[m/n]=k+p, ([x] = parte intera di x) quindi q' = (m+kn)-np' = m+kn-n(k+p) = m-np = q, CVD
A.S.E.3.8 Rappresentazioni Finite Nei computer, il numero di cifre a disposizione per la rappresentazione dei numeri e finitaNei computer, il numero di cifre a disposizione per la rappresentazione dei numeri e finita Esempio: con 3 cifre in base 10 possiamo rappresentare solo i numeri da 0 a 999 (= )Esempio: con 3 cifre in base 10 possiamo rappresentare solo i numeri da 0 a 999 (= ) –Cio significa che in questo caso i numeri sarebbero tutti uguali e pari a 763, ovvero |763| 1000 = |1763| 1000 = | | 1000 In generale, lavorare con n cifre in base b significa operare modulo b nIn generale, lavorare con n cifre in base b significa operare modulo b n
A.S.E.3.9 Conversione da base 10 a base n Tecnica delle divisioni successiveTecnica delle divisioni successive –Perché dividendo un numero per la sua base, il resto è lultimo digit
A.S.E.3.10 Esempio 1 Convertire il numero 52 in base 10 nellequivalente in base 2Convertire il numero 52 in base 10 nellequivalente in base 2 QuindiQuindi
A.S.E.3.11 Esempio 2 Convertire il numero in base 10 nellequivalente in base 16Convertire il numero in base 10 nellequivalente in base 16 QuindiQuindi (A) (A) (8) (8)4 14 (4) (E) (E)
A.S.E.3.12 Esempio 3 Convertire il numero in base 10 nellequivalente in base 8Convertire il numero in base 10 nellequivalente in base 8 QuindiQuindi
A.S.E.3.13 Numeri frazionari 1 Conversione da base b a base 10Conversione da base b a base 10 Non presenta problemiNon presenta problemi EsempioEsempio Convertire il numero binario Convertire il numero binario
A.S.E.3.14 Numeri frazionari 2 Conversione da base 10 a base bConversione da base 10 a base b La parte intera procedimento prima vistoLa parte intera procedimento prima visto Per la parte frazionaria in base b si haPer la parte frazionaria in base b si ha Moltiplicando per la base si haMoltiplicando per la base si ha La conversione può non avere fine, si arresta una volta raggiunta la precisione desiderataLa conversione può non avere fine, si arresta una volta raggiunta la precisione desiderata
A.S.E.3.15 Esempio Conversione da base 10 a base 16Conversione da base 10 a base 16
A.S.E.3.16 ERRORE Avendo arrestato la conversione al quarto passaggio si commette un certo erroreAvendo arrestato la conversione al quarto passaggio si commette un certo errore Lentità dellerrore si può valutare convertendo il risultato in base dieciLentità dellerrore si può valutare convertendo il risultato in base dieci
A.S.E.3.17 Binario => Ottale Dato un numero binarioDato un numero binario FattorizzandoFattorizzando
A.S.E.3.18 Metodo Basta raggruppare i digit del numero binario (bit) tre a tre e convertire ciascun gruppo nel corrispondente digit ottaleBasta raggruppare i digit del numero binario (bit) tre a tre e convertire ciascun gruppo nel corrispondente digit ottale EsempioEsempio NotaSono stati aggiunti degli zeri in testa e in coda affinché si avessero due gruppi di digit multipli di treNotaSono stati aggiunti degli zeri in testa e in coda affinché si avessero due gruppi di digit multipli di tre
A.S.E.3.19 Binario => Esadecimale Stesso procedimento del caso precedente, però ora si raggruppano i bit quattro a quattroStesso procedimento del caso precedente, però ora si raggruppano i bit quattro a quattro EsempioEsempio Per le conversioni ottale => binario e esadecimale => binario si opera in modo simile convertendo ciascun digit nel corrispondente numero binarioPer le conversioni ottale => binario e esadecimale => binario si opera in modo simile convertendo ciascun digit nel corrispondente numero binario
A.S.E.3.20 Ottale => Esadecimale (Esadecimale => Ottale) Conversione intermedia in binarioConversione intermedia in binario EsempioEsempio –Ottale => Esadecimale –Esadecimale => Ottale
A.S.E.3.21 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.3.22 Aritmetica binaria 1 bis Somma di due bitSomma di due bit x + y + c in {s, c out }x + y + c in {s, c out } s = Sommas = Somma c = Carry (RIPORTO)c = Carry (RIPORTO) xy c in s c out x y c in c out s
A.S.E.3.23 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.3.24 Aritmetica binaria 2 bis Sottrazione di due bitSottrazione di due bit x - y - b in {d, b out }x - y - b in {d, b out } d = Differenzad = Differenza b = Borrow (Prestito)b = Borrow (Prestito) xy b in d b out x y b in b out d
A.S.E.3.25 Aritmetica binaria 3 Prodotto di due bitProdotto di due bit a x ba x b p = Prodottop = Prodotto EsempioEsempio abp x 5 = 65
A.S.E.3.26 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 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) In pratica, il bit più significativo indica il segnoIn pratica, il bit più significativo indica il segno 0 = +0 = + 1 = -1 = -
A.S.E.3.27 Varie rappresentazioni su 4 bit Base 10 Mod e seg comp a 1 comp a 2 trasl
A.S.E.3.28 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 range dei numeri risultaIl range dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E.3.29 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.3.30 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 range dei numeri risultaIl range dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E.3.31 Traslazione Se si dispone di n bitSe si dispone di n bit Il corrispondente in base 10 èIl corrispondente in base 10 è Il range dei numeri risultaIl range dei numeri risulta Esempio n = 4Esempio n = 4
A.S.E.3.32 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.3.33 Interi Assoluti Base 2Base 2 DinamicaDinamica dati N bitdati N bit Esempio N = 8Esempio N = 8 Base 10 Base
A.S.E.3.34 Somma di Interi Assoluti N = 8N = 8 Base 10 Base = = Il carry N+1 indica loverflow La somma di due numeri di N bit è rappresentabile sempre su N + 1 bit 24
A.S.E.3.35 Sottrazione di Interi Assoluti N = 8N = 8 Base 10 Base = = Il borrow N+1 indica lerrore 210
A.S.E.3.36 Prodotto di Interi Assoluti N = 5N = 5 Base 10 Base 2 19 x 23 = Il prodotto di due numeri su N bit è rappresentabile su 2N bit
A.S.E.3.37 Interi Relativi Complemento a 2Complemento a 2 DinamicaDinamica dati N bitdati N bit Esempio N = 8 (+128 > W > -129)Esempio N = 8 (+128 > W > -129) Base 10 Base 2 C = =
A.S.E.3.38 Complemento a 2 Primo metodoPrimo metodo Applicare la definizioneApplicare la definizione Secondo metodoSecondo metodo complemento bit a bit più 1complemento bit a bit più 1
A.S.E.3.39 Somma di Interi Relativi (C-2) Se non cè overflow la somma è sempre correttaSe non cè overflow la somma è sempre corretta –W rappresentazione di W in C-2 –Z rappresentazione di Z in C-2 Base 10 Base = Base 10 Base =
A.S.E.3.40 Sottrazione di Interi Relativi (C-2) Coincide con la sommaCoincide con la somma
A.S.E.3.41 Prodotto di Interi Relativi (C-2) N = 5N = 5 Base 10 Base 2 (C-2) 14 x -13 = Il prodotto di due numeri in C-2 non torna per i numeri negativi
A.S.E.3.42 Prodotto di Interi Relativi (C-2) N=5 Estensione a 10N=5 Estensione a 10 Base 10 Base 2 (C-2) -13 x 14 = Il prodotto di due numeri in C-2 torna se si estende la rappresentazione a 2N bit