1 Sistemi Digitali. 2 Definizione 3 0 5 Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V) 1 0 1.

Slides:



Advertisements
Presentazioni simili
Algebra Booleana Generalità
Advertisements

Università di Padova Corso “Circuiti e Sistemi Logici”
I numeri naturali ….. Definizione e caratteristiche
Informatica Generale Susanna Pelagatti
Rappresentazione di Numeri Reali
Sistemi di numerazione
Le Informazioni e la loro Rappresentazione nei calcolatori
Trasmissione delle informazioni
Codifica dei Dati Idea: vogliamo rappresentare dati eterogenei utilizzando un linguaggio che l’elaboratore puo’ facilmente manipolare Essenzialmente vogliamo.
Vincenza Ferrara dicembre 2007 Fondamenti di Matematica e Informatica Laboratorio Informatica I anno a.a
Sistemi di numerazione e codici
Algebra di Boole.
esponente del radicando
1 Istruzioni, algoritmi, linguaggi. 2 Algoritmo per il calcolo delle radici reali di unequazione di 2 o grado Data lequazione ax 2 +bx+c=0, quali sono.
Sistema di numerazione binario
Reti Logiche A Lezione n.1.4 Introduzione alle porte logiche
Sistemi Digitali.
Informatica 3 Codifica binaria.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
Corso di Informatica (Basi di Dati)
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Corso di Informatica (Programmazione)
Corso di Informatica (Programmazione)
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Problemi e algoritmi Anno Accademico 2009/2010.
Corso di Informatica per Giurisprudenza
1 Sistemi Digitali. 2 Definizione Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V)
La rappresentazione dellinformazione. 7-2 Digitalizzare linformazione Digitalizzare: rappresentare linformazione per mezzo di cifre (ad es: da 0 a 9)
I numeri by iprof.
I numeri relativi by iprof.
Gli esseri viventi ricevono informazione direttamente dal mondo circostante e dai propri simili attraverso i sensi (percezione). La percezione, tuttavia,
Codifica binaria Rappresentazione di numeri
Programma del corso Dati e loro rappresentazione Architettura di un calcolatore Sistemi operativi Linguaggi di programmazione Applicativi: - fogli elettronici.
Usare rappresentazioni di lunghezza fissa porta ad avere valori non rappresentabili: Overflow indica un errore nella rappresentazione del risultato in.
Rappresentazione di Numeri Reali
1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.
RAPPRESENTAZIONE DELL’INFORMAZIONE
Elementi di Informatica
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
Educare al multimediale 1 – Verso il digitale 2 Presentazione a cura di Gino Roncaglia Prima parte: Informazione in formato digitale.
RAPPRESENTAZIONE DELL'INFORMAZIONE
Sistemi di numerazione
1101 = x 10 x 10 x x 10 x = CORRISPONDENZE
Che cos’è un sistema di numerazione?
CONCETTI DI BASE 1.0 FONDAMENTI 1.1 HARDWARE 1.2 SOFTWARE 1.3 RETI
RAPPRESENTAZIONE DELLE INFORMAZIONI
ECDL Patente europea del computer
Programma di Informatica Classi Prime
Rappresentazione dell’informazione nel calcolatore.
Rappresentazione Dati Codificare informazioni nel Computer
ARCHITETTURA DEI SISTEMI ELETTRONICI
Capitolo 2 Architettura di un calcolatore
Informatica Lezione 3 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
Fondamenti di Informatica1 Memorizzazione su calcolatore L'unità atomica è il bit (BInary DigiT) L'insieme di 8 bit è detta byte Altre forme di memorizzazione:
Informatica 6 Tipi di dato. Nelle celle di memoria di un calcolatore ci sono solo “0” e “1”, fisicamente realizzati tramite due diversi livelli di tensione.
Rappresentazione della Informazione
Rappresentazioni a lunghezza fissa: problemi
Rappresentazione in virgola mobile (floating-point) Permette di rappresentare numeri con ordini di grandezza molto differenti utilizzando per la rappresentazione.
Fondamenti di Informatica
Rappresentazione dell'informazione
Rappresentazione dell'informazione 1 Se ho una rappresentazione in virgola fissa (es. su segno e 8 cifre con 3 cifre alla destra della virgola) rappresento.
La codifica dei numeri.
Conversione binario-ottale/esadecimale
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Io ho voluto dimostrarlo attraverso una delle mie passioni:
I sistemi di numerazione
Logica di base e Conversione analogico-digitale Lezione 3 / Prima parte Gaetano Arena e.mail: 1.
Rappresentazione delle informazioni negli elaboratori L’entità minima di informazione all’interno di un elaboratore prende il nome di bit (binary digit.
Sistemi Digitali.
Transcript della presentazione:

1 Sistemi Digitali

2 Definizione

3 0 5 Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V) 1 0 1

4 Analisi e Sintesi Rispetto ai sistemi analogici, nei quali i segnali possono assumere tutti i possibili valori in un continuo, i sistemi digitali consentono una minore complessità dei dispositivi che devono generare i segnali, ed una maggiore immunità ai disturbi. Un sistema digitale é un circuito costituito da componenti elementari e dai collegamenti che li interconnettono. I componenti elementari possonoL'obiettivo di questo corso é lo studio di problemi di analisi e sintesi di sistemi digitali.. L'obiettivo di questo corso é lo studio di problemi di analisi e sintesi di sistemi digitali. analisi dal circuito alla specifica formale sintesi dalla specifica funzionale al circuito

5 Viste della progettazione digitale. Vista comportamentale: descrive le funzioni indipendentemente dallimplementazione (es: progettare un circuito che esegua la somma aritmetica fra due numeri interi ) Vista strutturale: descrive il modello di interconnessione dei componenti (es: disegno dei componenti digitali elementari e loro interconnessioni) Vista fisica: componenti fisici (es. transistors, layout su silicio, tecnologie di integrazione..)

6 adder XYXY X+Y comportamentale (quale funzione) strutturale (collegamenti) fisica (layout) Esempio: sommatore aritmetico

7 Campi di Applicazione La progettazione digitale interessa tutti i campi di applicazione dell'elettronica: Calcolo Automatico Telecomunicazioni Controlli Automatici Misure Elettriche.... In questo corso, oltre ad introdurre i principi generali di progetto di sistemi digitali, siamo interessati a studiare applicazioni nel campo del Calcolo Automatico.

8 Aspetti della progettazione digitale Come si rappresenta linformazione (dati, istruzioni, comandi..) in un sistema digitale Analisi Sintesi

9 Rappresentazione dell'Informazione I calcolatori elettronici sono macchine in grado di elaborare informazioni trasformandole in altre informazioni. Nel mondo dell'informatica, intendiamo in modo più restrittivo per informazione tutto ciò che può essere rappresentato tramite opportune sequenze di simboli in un alfabeto prefissato. La rappresentazione estensionale di un insieme I é un insieme di parole ognuna delle quali esprime un elemento di I. Esempio: mela,pera,uva,arancia Un codice C é un insieme di parole composte da simboli di un alfabeto (detto alfabeto di supporto di C).

10 Esempi di codici Codice 1: lingua Italiana Macchina Razzo Aereo Codice 2: Linguaggio Binario Codice 1Codice 2 Macchina00 Razzo01 Aereo10

11 Codifica e decodifica CODIFICA La codifica di un insieme di informazioni I in un dato codice C é una funzione f: I C Esempio: macchina 00, razzo 01, aereo 01 dove I è un sottoinsieme di parole della lingua italiana, e C è un sottoinsieme delle parole composte da due simboli binari DECODIFICA La decodifica di una informazione codificata in precedenza é una corrispondenza g : C I

12 La funzione di co-decodifica La funzione f può essere descritta in modo estensionale, cioè ad ogni simbolo di I si fa corrispondere un simbolo di C (vedi esempio dei mezzi di locomozione) La funzione f può viceversa avere una rappresentazione intensiva, come ad esempio il cifrario di Cesare

13 Cifrario di Cesare: codifica intensiva Il cifrario di Cesare, usato nei tempi dell'antica Roma, aveva la seguente funzione di codifica: f: i i+3(modulo 26) i=0,1..25 dove al numero 0 corrisponde la lettera a, 1 a b ecc. Secondo tale codice, la parola "babbo" é codificata come "edeer", perché b b+3=e ecc;

14 Criteri di valutazione di una codifica Economicità: sono considerate migliori rispetto a questa caratteristica le codifiche che utilizzano pochi simboli. Semplicità di codifica e decodifica: é auspicabile poter trasformare un linguaggio da un codice all'altro in modo efficiente Semplicità di elaborazione: sono preferibili le codifiche che consentono di eseguire le operazioni definite sui dati in modo agevole (ad esempio, sostituendo ai simboli arabi i simboli dei numeri romani, "saltano" il meccanismo del riporto e della posizionalità).

15 Sistemi posizionali (def)

16 Riassumiamo: b è la base, cioè il numero di simboli diversi nellalfabeto (in base 10 il numero di simboli è 10, e lalfabeto dei simboli è ={0,1,2,3,4,5,6,7,8,9} N b indica un numero espresso in base b Quindi ad esempio e 10 2 hanno significato diverso anche se le sequenze di simboli sono le stesse (1 seguito da 0)!! Ci dovremo dunque occupare di come tradurre una codifica in unaltra codifica, o di come interpretare una stringa di simboli una volta che ci venga detto il codice utilizzato per generarla Esempio: –case IT ENG

17

18 Codice binario Codice binario: un codice posizionale costituito dai soli simboli 0 ed 1. Quindi, b=2, ={0,1} I simboli 0 ed 1 prendono il nome di bit, una contrazione per "binary digit". Perchè il codice binario viene utilizzato nel progetto di circuiti digitali? George Boole dimostrò come la logica possa essere ridotta ad un sistema algebrico molto semplice, che utilizza solo un codice binario (zero e uno, vero e falso). Il codice binario fu trovato particolarmente utile nella teoria della commutazione (Shannon) per descrivere il comportamento dei circuiti digitali (1=acceso, 0=spento).

19 Rélais aperto (non passa segnale) Rélais chiuso (il segnale passa) x variabile che descrive lo stato del rélais x assume valori in {0,1}..ai tempi di Shannon i commutatori telefonici erano reti di rélais (interruttori) Shannon introdusse lalfabeto binario per descrivere lo stato dei rélais

20 x y x y x y Il segnale passa solo se sia x che y sono 1, cioè i due rélais sono chiusi x y Il segnale passa se x o y sono 1 cioè, chiusi Grazie allalgebra di Boole (che vedremo in seguito) non solo lo stato di un rélais, ma un intero circuito si può descrivere mediante una espressione algebrica I moderni componenti digitali hanno un funzionamento che approssima quello del rélais: il loro stato può essere descritto da una variabile binaria, cioè che assume solo I valori 0 o 1 (variabile booleana, da Boole)

21 Codici binari Lalfabeto binario può essere usato per rappresentare lo STATO di un circuito, e, come vedremo, anche le sue funzioni Inoltre lalfabeto binario può essere utilizzato per codificare linformazione che viene elaborata da un circuito Codici binari sono tutti quelli che usano un alfabeto binario per codificare linformazione Informazione: numeri e simboli Cominciamo con i numeri: i codici saranno diversi a seconda che si vogliano rapprsentare numeri naturali, interi, reali..

22 Riassumiamo Un alfabeto binario può essere usato per rappresentare lo stato di un componente digitale (aperto/chiuso, acceso/spento) Variabili binarie (booleane) ed un insieme di operatori algebrici possono essere usati per esprimere mediante espressioni algebriche la vista comportamentale di un circuito (x y) Infine, possiamo utilizzare codici binari per rappresentare le informazioni che entrano, vengono elaborate, ed escono in un circuito digitale (ad esempio gli addendi da sommare in un sommatore, ed il risultato della somma)

23 1.Rappresentazione dellinformazione numerica Rappresentzione dei numeri naturali (= interi non negativi)

24 Rappresentazione binaria di numeri naturali

25 Cambiamenti di base e artimetica in base b Le regole di codifica, di cambiamento di base e di calcolo variano a seconda che si vogliano rappresentare: –Numeri Naturali –Numeri Interi –Numeri decimali in virgola fissa e mobile Tuttavia tali regole restano le stesse indipendentemente dalla base!

26 Per ogni insieme di numeri (naturali, interi e reali) vedremo: Modalità di rappresentazione in base b Trasformazione da una base a ad una base b Aritmetica nella base considerata Perché ci occupiamo di basi diverse da 2, se i circuiti digitali usano un alfabeto binario? Perché le informazioni vengono manipolate da altri dispositivi (es. tastiere e stampanti) che usano altri codici. Inoltre nei linguaggi di programmazione i numeri possono essere codificati in codici diversi (es. esadecimale), e vengono poi tradotti in binario

27 Cambiamento di base per i numeri naturali Problema : convertire un numero N espresso in base a N a in un numero N espresso in base b: N b

28 Conversione di Base (2) Metodo polinomiale: usare lespressione:

29 Metodo polinomiale Si esprime il numero N a come un polinomio, usando i numeri dellalfabeto b nel polinomio Si valuta il polinomio usando laritmetica in base b

30 Conversione di base Metodo iterativo: 1. Si divide N per b (b va espresso in base a e la divisione va fatta in base a), sia Q il quoziente e r il resto. r è la cifra meno significativo di N b, poiché r è b 2. (finché Q>0) ripeti: esegui Q/b : quoziente=Q resto=r Q Q N b r N b Esempio: = (a=10 e b=2) Nota: divido per 2 con laritmetica decimale. (2 espresso con codice binario è la stringa 10!!!) MSB N=23Q= r=

31 Osservazioni Il risultato si ottiene affiancando a sinistra le cifre che rappresentano i resti delle divisioni per b in base a Questi resti saranno sicuramente <b (ad esempio se b è 3, e divido Na per 3, i resti possibili saranno 0,1 o 2) Ma che succede se la base di arrivo è> di quella di partenza?? (ad esempio, a=10 e b=16) La base sedici utilizza 16 simboli, A B C D E F, perciò 16 si rappresenta col simbolo F Ma le divisioni vanno fatte in base 10, quindi F 16 =16 10 Inoltre i resti, pur essendo <16, risulteranno espressi in base 10 Quindi alla fine ogni singolo resto va ri-espresso nella base di arrivo,cioè 16 (quindi se nell i-esimo passo r=11, devo trasformarlo in B)

32 Esempio 2 (da base 10 a base 16) Dividere per notate che = F 16 La base di arrivo va convertita nella base di partenza!! Quindi =13D 16 1) 317 : 16 Q=19, r1= =D 16 (LSB) 2) 19:16 Q=1 r2= =3 16 3) 1:16 Q=0 r3= =1 16

33 Provate!! in base 12 = ??? A B

34 Esempio 3 (se la base di partenza non è 10) Convertire il numero da base 3 a base 5 Due strade : a)eseguire : 12 3 (Notate: 12 3 =10 5 =5 10 ) Dovrei effettuare la divisione con aritmetica in base 3 DIFFICILE!!! b)(più semplice) convertire in base 10 (metodo polinomiale) e poi convertire il risultato in base 5 (resti) = = col procedimento dell'esempio precedente :5 ecc. Si ottiene =

35 Conversioni da base b a base b n Prop. : lavorando in aritmetica in base b si ha che 1)n m-1 … n 1 n 0 DIV b i = n m-1 … n i r= n i-1 … n 0 2)n m-1 … n 1 n 0 MOD b i = n i-1 … n 0 (r = resto, MOD = modulo) Es: DIV 100 (10 2 )=35 (r=3 10 ) DIV 2(2 1 ) = 101 (r=1) Da ciò : Conversione da base 2 a base 2 n : considera i bit a n-uple partendo dal meno significativo e traducile in base 2 n Esempio 3 : convertire da base 2 a base 4= =

36 ARITMETICA IN BASE b PER I NATURALI Tutte le operazioni vengono eseguite come in base 10, ma modulo b ( Es.: ( ) 2 = 10 2 ) e quindi anche i riporti e i prestiti agiscono modulo b.

37 Somma

38 Sottrazione Sottrazione:DifferenzaPrestito Se cè un prestito (borrow) e il bit adiacente è un 1, questo viene modificato in uno zero Se cè un prestito (borrow) e il bit adiacente è uno 0, questo è modificato in 1, e così tutti i bit successivi, finché non si incontra un bit=1. Questo viene posto=0, e si ripristina il processo di sottrazione

39 Sottrazione (2) Esempio: (24-17=7) (40-25=15)

40 Moltiplicazione Complessa Funziona con prodotti parziali Slittamento dei prodotti parziali Somma prodotti parziali

41 Esempio 1011 Moltiplicando (11 dec) x 1101 Moltiplicatore (13 dec) 1011 Prodotti parziali 0000 Nota: se il Mt=1 COPIA Md 1011 (slittando il valore) 1011 altrimenti prod_parz= Prodotto (143 dec) Nota: il risultato ha lunghezza doppia!

42 Divisione Più complessa della moltiplicazione In particolare per numeri negativi In dettaglio nel corso di Arc. II

Divisione per Interi senza segno Quoziente Dividendo Resto Resti parziali Divisore

44 Lunghezza di parola: di quante cifre in base b abbiamo bisogno per rappresentare un numero N b ? Nota: Un elaboratore lavora con parole (stringhe binarie) di lunghezza fissa (diciamo W ). La dimensione massima e minima dei numeri rappresentabili dipende dalla lunghezza di parola. In base due, posso rappresentare numeri naturali fra 0 e 2 W Quindi: se un numero è codificato con m <W bit dobbiamo inserire in testa (W-m) zeri non significativi se un numero è codificato con m> W bit : dobbiamo considerare solo le W cifre meno significative del numero (situazione di errore detta overflow)

45 Rappresentazione dellinformazione numerica 2) Rappresentazione dei numeri interi (positivi e negativi)

46 RAPPRESENTAZIONE DEGLI INTERI POS E NEG Rispetto ai naturali, il problema è la rappresentazionedel segno. Esistono tre modalità di rappresentazione: –in modulo e segno, –in complemento a uno e –in complemento a due. I primi due rendono le operazioni di somma e sottrazione delicate (sono necessari controlli preliminari sul segno e sui valori assoluti degli operandi) Col secondo, invece, la sottrazione si esegue semplicemente come somma dellopposto (a patto di ignorare leventuale overflow derivante dalla somma di numeri negativi).

47 Rappresentazione con modulo e segno Data una sequenza di simboli c n-1 c n-2..c 0, c n-1 rappresenta il SEGNO e non concorre a rappresentare il valore assoluto del numero Quindi se ho n bit, uno va perso per codificare il segno. In valore assoluto, con n bit, rappresento un range di numeri da –(b n-1 – 1) a +(b n-1 -1) Es con n=4 min 1111= -111=-7 e max 0111=+7

48

49 Rappresentazione in complemento a 2 (Ca2): 2 N = -b n-1 c n-1 + Lespressione per rappresentare col metodo polinomiale un intero N in Ca2 è:

50 Esempi (in base 2 e con n=8) +3 = = = = = = =

51 Verifica Il digit più significativo non ha valore i segno ma concorre al calcolo del numero!! Applicando la formula, si ha:

52 Descrizione geometrica della rappresentazione di interi in Ca2

53 Range dei Numeri in Ca2 (max e min interi rappresentabili con W cifre) 8 bit (Ca2) +127 = = = = bit (Ca2) = = = = Il più grande numero positivo ha il primo bit 0 e tutti gli altri 1. Il più grande numero negativo (in valore assoluto) ha il primo bit 1 e tutti gli altri zero

54 Range di rappresentazione In generale con n bit, il range va da 2 n -1 a -2 n E in base b 2?

55 Complemento a 2 Proprietà-benefici: Rappresenta i numeri da -2 n-1 a +2 n+1 Una sola interpretazione per 0 Un numero negativo si esprime in complemento a 2 invertendo i bit del corrispondente numero positivo, e poi sommando 1 (segue dimostrazione) Regola della sottrazione in Ca2: N1-N2=N1+not(N2)+1

56 Artimetica dei numeri interi in Ca2 Il vantaggio è che somma e sottrazione si eseguono (quasi) nello stesso modo (mentre con la rappresentazione col segno devo considerare separatamente la parte della stringa che rappresenta il numero, ed il bit di segno, ed eseguire i calcoli in modo diverso a seconda dei casi)

57 Sottrazione in complemento a 2 Sia A un intero binario espresso in complemento a 2: A= Invertiamo tutti i bit di A e sommiamo 1: Si dimostra che A = - A !!!! Ne consegue:

58 Dimostrazione A=-A A+A+1=0 A+A= 1

59 Sottrazione in Ca2 Quindi, per eseguire una sottrazione in binario fra interi rappresentati in complemento a 2, basta sommare al minuendo il complemento del sottraendo e sommare 1

60 3) Rappresentazione dei numeri Reali Virgola fissa e mobile

61 3.1) Numeri reali in virgola fissa Il problema aggiuntivo è la rappresentazione della parte intera e di quella frazionaria. Abbiamo sempre un sistema posizionale (in base b 2). I primi m bit rappresentano la parte intera, i successivi n la parte frazionaria. con ci { 0, …, b-1 }

62 Precisione

63 Cambiamento di base Riserva m bit per la parte intera (P.I.) e n bit per la parte frazionaria (P.F.) ( m e n fissati)

64 Conversione di base Metodo polinomiale Es: 1011,011 =

65 Conversione di base Metodo iterativo, parte intera: come per i numeri interi Metodo iterativo, parte frazionaria 1. Si moltiplica N f per b (sempre con laritmetica di a!!). Il prodotto sia p=p i,p f (es 0,46) pi è la cifra più significativa di N f (in base b). 2. (finché p f =0) esegui: p f b = p i,p f N f = N f p i (concatena la cifra p i a destra di N f ) p f NOTA: Il processo può o meno terminare (p f può non essere mai zero!)

66 Conversione di base (metodo iterativo, parte frazionaria) Esempio (0,625) 10 =(0,N f ) 8 0,625 8=5,00 N f =5 (0,23) 10 = (0,N f ) 2 0,23 2=0,46 N f =0 0,46 2=0,92 N f =00 0,92 2=1,84 N f =001 0,84 2=1,68 N f =0011… (N f ) 2 =0011

67 Esempio 2 : convertire 17,416 in base 2 con 8 bit sia per P.I. che per P.F. 1. converti parte intera : = converti parte frazionaria 0,416 * 2 = 0,832da cuiP.I. = 0P.F. = 0,832 0,832 * 2 = 1,664da cuiP.I. = 1P.F. = 0,664 0,664 * 2 = 1,328da cuiP.I. = 1P.F. = 0,328 0,328 * 2 = 0,656da cuiP.I. = 0P.F. = 0,656 0,656 * 2 = 1,312da cuiP.I. = 1P.F. = 0,312 0,312 * 2 = 0,624da cuiP.I. = 0P.F. = 0,624 0,624 * 2 = 1,248da cuiP.I. = 1P.F. = 0,248 0,248 * 2 = 0,496da cuiP.I. = 0P.F. = 0,49 Perciò 0, = 0, , = ,

68 Precisione in virgola fissa

69 3.2) Rappresentazione in virgola mobile

70 Forma Normalizzata Es: Se b=10 m [0,1 1)

71 Forma Normalizzata ((2)

72 CAMBIAMENTO di BASE in virgola mobile

73 Esempio

74 Range della rappresentazione in v.m.

75 Esempio Con 4 bit di mantissa, il range (in valore assoluto) è: [1000,1111] in decimale: [0.5, 0.875] Con 3 bit di esponente in Ca2, il range degli esponenti positivi è: [000,011] cioè [0,+3] esponenti negativi [100,111] cioè [-4,-1]

76

77

78 Precisione e Ampiezza

79 STANDARD IEEE 85

80 Standard IEEE

81

82 Conversione in virgola mobile Conversione in virgola mobile del numero -11,0625 utilizzando una rappresentazione con 1 bit di segno, 8 bit di mantissa e 4 di esponente in complemento a 2. Passo 1. Si converte il numero da decimale a binario 1.a) Conversione parte intera (divisioni successive per b(2) in base a(10 ) 11: Quindi (11) 10 = (1011) 2

83 Conversione virgola mobile 1b) Conversione parte decimale x 2 = x 2 = x 2 = x 2 = 1.0 Quindi (0.0625) 10 = (0.0001) 2 da cui ( ) 10 = ( ) 2

84 Conversione virgola mobile Passo 2. Determinazione del segno è negativo quindi S=1 Passo 3. Determinazione della mantissa La mantissa contiene tutte le cifre significative del numero, a partire dall1 più significativo, eventualmente trascurando le meno significative se il loro numero è maggiore del numero di bit a disposizione Quindi M = che, per definizione, rappresenta il valore (si sottintende che la virgola sia posizionata immediatamente a sinistra della cifra più significativa)

85 Conversione virgola mobile Passo 4. Determinazione dellesponente –Dalla definizione della rappresentazione in virgola mobile un numero n è uguale a: n = S x M x 2 E –Poiché una moltiplicazione per una potenza positiva della base equivale ad uno spostamento verso destra della virgola di un numero di posizioni pari allesponente, e poiché il numero da rappresentare ha la virgola 4 posizioni più a destra rispetto al numero rappresentato dalla sola mantissa, lesponente dovrà essere uguale a 4.

86 Conversione virgola mobile In complemento a due su 4 bit, rappresentazione con cui posso rappresentare i numeri interi relativi da -8 a +7, 4 è rappresentato da 0100 Infatti, poiché 4 un numero positivo, non lo devo complementare e lo rappresento come il corrispondente numero naturale. Quindi la rappresentazione di in virgola mobile, con 8 bit di mantissa, 4 di esponente e 1 di segno, è la seguente S=1 M= E=0100

87 Aritmetica in VM

88 Esempio

89 Somma

90 Somma (2)

91 Esempio s= - perché e1<e2 (+1<+3) 2.Sposta mantissa m1 di due posizioni a destra e aumenta lesponente di due, poiché (e2-e1)=2 3.m=|m1-m2| = ( )= Poiché m è normalizzata, non cè altro da fare. Il risultato è

92 Esempio 2 1.Esprimi in forma normalizzata 2.Confronta esponenti 3.Allinea esponenti e slitta mantissa 4. Risultato