Estratto del documento

Sistema di rappresentazione dei numeri con binario

1) Rappresentazione dei numeri naturali

Rappresentazione numeri naturali: con N bit, il range dei numeri che posso rappresentare va da 0 a 2N-1; numero di bit di cui ho bisogno per rappresentare N numeri: K bit, dove N = 2K.

Da binario a decimale: 101101 = 1 · 25 + 0 · 24 + 1 · 23 + 1 · 22 + 0 · 21 + 1 · 20 = 32 + 0 + 8 + 4 + 0 + 1 = 45.

Da decimale a binario: 45:2 resto 1; 22:2 resto 0; 11:2 resto 1; 5:2 resto 1; 2:2 resto 0; 1:2 resto 1. La rappresentazione binaria va riportata al contrario, da LSB a MSB: 45 = 1011012. Mi fermo quando ottengo come risultato 0.

Operazioni con numeri naturali

  • Somma: 00101 + 00101 = 01010; con resto si procede bit per bit.
  • Moltiplicazione: numero moltiplicato per un bit; sommo i risultati parziali e ottengo un numero fino a N bit.
  • Shift a sinistra e destra: X · 2a = numero originario X shiftato di a posizioni; Y = numero shiftato. Lo shift a sinistra/destra sposta i bit.
  • Distanza di Hamming: corrisponde al numero di posizioni alle quali i bit sono diversi.

Esempio: A = 1111, B = 1001, C = 0110. dH(A,B) = 2; dH(A,C) = 3; dH(B,C) = 4.

2) Rappresentazione dei numeri interi

Rappresentazione dei numeri interi: esistono 2 tipologie di rappresentazione.

a) Modulo e segno: un bit dedicato al segno, il bit N-1. Numeri positivi: bit di segno = 0; numeri negativi: bit di segno = 1. Range: [-(2N-1-1), 2N-1-1]. Esempio con N = 5: i valori vanno da -15 a +15.

Problemi della rappresentazione in modulo e segno: lo zero si rappresenta in 2 modi, ad esempio 0000 e 1000; inoltre non funziona direttamente la somma.

b) Complemento a 2: il MSB vale -2N-1. Quindi, se il MSB = 0, il numero è positivo; se il MSB = 1, il numero è negativo.

Esempio: 10110 = -24 + 0 · 23 + 1 · 22 + 1 · 21 + 0 · 20 = -16 + 0 + 4 + 2 + 0 = -10. Range: [-2N-1, 2N-1-1].

Operazioni con complemento a 2

Rappresentazione di segno binario opposto del numero. Procedimento:

  • Inverto i bit.
  • Sommo 1.

Esempio: voglio -7 con 4 bit. 7 = 0111. Inverto i bit: 1000. Sommo 1: 1000 + 1 = 1001. Quindi -7 = 1001.

Il complemento a 2 rappresenta tutti i numeri con una sola rappresentazione dello zero e permette sempre la somma.

Sottrazione: A - B = A + (-B), ottenendo -B invertendo i bit di B e sommando 1.

Overflow: si ha quando sommo tra loro due numeri con lo stesso segno e ottengo un risultato con segno opposto.

Soluzione ed estensione da N a M bit: aggiungo il bit MSB tante volte quante mi servono per arrivare a M bit.

Esempio: N = 4, voglio -7 con 8 bit: 1001 diventa 11111001. Esempio: N = 4, voglio 7 con 8 bit: 0111 diventa 00000111.

3) Rappresentazione dei numeri razionali

Rappresentazione a virgola fissa: viene dedicato un numero di bit alla parte intera e un numero di bit alla parte frazionaria.

Da decimale a binario: separo parte intera e parte frazionaria.

36,4710: parte intera come numeri naturali, divisione per 2. 36:2 resto 0; 18:2 resto 0; 9:2 resto 1; 4:2 resto 0; 2:2 resto 0; 1:2 resto 1. Quando ottengo 0 mi fermo e scrivo al contrario: 100100.

Parte frazionaria: invece di dividere, moltiplico per 2. Se il numero inizia con 1, sostituisco la parte intera con 0 e procedo. Dopo aver ottenuto il numero con la virgola, mi fermo quando ho ottenuto abbastanza parti. Scrivo le parti ottenute in ordine.

0,47 · 2 = 0,94; 0,94 · 2 = 1,88; 0,88 · 2 = 1,76; 0,76 · 2 = 1,52; 0,52 · 2 = 1,04; 0,04 · 2 = 0,08. La parte frazionaria ottenuta è 011110. Quindi 36,4710 = 100100.0111102.

Da binario a decimale: prima della virgola uso le potenze positive di 2; dopo la virgola uso le potenze negative: 2-1, 2-2, 2-3 e così via.

Problemi della virgola fissa: la dinamica è limitata.

4) Rappresentazione dei numeri reali

Rappresentazione a virgola mobile: N = M · 2E, dove M = mantissa ed E = esponente.

Vengono specificati 3 parametri: precisione P, cioè il numero di bit che ha la mantissa; esponente massimo EMAX, numero che sommato all’esponente vero serve per avere il campo esponente; esponente minimo EMIN.

Forma normalizzata: la mantissa viene scelta sempre nella forma 1,xx... . Per l’esponente si usano i bit E; per la mantissa i bit P. In generale: EMAX = 2E-1-1; EMIN = 1-EMAX.

Formati floating point:

Formato Bit E EMAX EMIN P
IEEE binary32 32 8 127 -126 23
Bfloat 16 8 127 -126 7
IEEE binary16 16 5 15 -14 10
Binary8 8 2 15 -14 Nota: P, E e bit dipendono dal formato.

Nota: 8, 11, 16, 32; E + P + segno = numero totale di bit nel formato.

Conversione da decimale a binario in floating point

Da decimale a binario: 36,4710, P = 23 bit, E = 8 bit, S = 1 bit.

1) Scrivo in binario parte intera e frazionaria. Parte intera: 36:2 resto 0; 18:2 resto 0; 9:2 resto 1; 4:2 resto 0; 2:2 resto 0; 1:2 resto 1; quindi 100100.

Parte frazionaria: 0,47 · 2 = 0,94; 0,94 · 2 = 1,88; 0,88 · 2 = 1,76; 0,76 · 2 = 1,52; 0,52 · 2 = 1,04; 0,04 · 2 = 0,08; quindi 011110. Risultato: 100100.011110.

2) Sposto la virgola per avere la mantissa nella forma 1,xx...: 100100.011110 = 1.0010001110 · 25. Mantissa: 0010001110.

3) Scrivo l’esponente polarizzato in binario: Epol = 127 + 5 = 13210. 132:2 resto 0; 66:2 resto 0; 33:2 resto 1; 16:2 resto 0; 8:2 resto 0; 4:2 resto 0; 2:2 resto 0; 1:2 resto 1. Quindi 132 = 100001002.

4) Scrivo il numero: in questo caso il numero è positivo, quindi il bit di segno è 0. Risultato: 0 10000100 00100011110...

Nota: davanti o dietro il numero aggiungo il bit per estendere, se necessario.

Conversione analogico-digitale ADC

1) Campionamento

Conversione analogico-digitale ADC: il campionamento divide l’asse dei tempi in intervalli di durata fissa. Il periodo di campionamento è Ts.

Periodo di campionamento: Ts. Frequenza di campionamento: fs = 1/Ts. Più fs è grande, più accurata è la descrizione del segnale. Si guarda il valore del segnale al tempo t = nTs.

Teorema di Nyquist-Shannon: la frequenza minima di campionamento deve essere fsmin = 2 · FMax del segnale.

2) Quantizzazione

Quantizzazione: divide l’intervallo di valori analogici in un numero finito di intervalli di ampiezza uguale. Esempio: A, 10, 34322, valori minimi e massimi.

Dato il segnale x(t), la dinamica è [Umin, UMax], dove UMax e Umin indicano i valori massimo e minimo. L’intervallo [Umin, UMax] viene diviso in intervalli uguali.

Risoluzione o ampiezza degli intervalli: dato un ADC a N bit, il numero di intervalli è 2N. L’ADC lavora con k bit e con 2k livelli.

La quantizzazione non è reversibile. La differenza tra valore analogico reale e valore digitale quantizzato è detta errore di quantizzazione o rumore di quantizzazione.

3) Codifica

Codifica: i segnali vengono convertiti in segnali digitali binari.

Esempio: 00 corrisponde a 0; 01 corrisponde a 1; 10 corrisponde a 2; 11 corrisponde a 3. Se il valore si trova nel pallino medio o in un intervallo, prende quello inferiore o quello corrispondente.

Conversione digitale-analogico DAC

Conversione digitale-analogico DAC: dato un segnale binario, il convertitore prende i livelli di tensione corrispondenti. Nell’intervallo [min, max] si prende un livello di tensione e si ricostruisce il segnale analogico.

Anteprima
Vedrai una selezione di 10 pagine su 41
Appunti esame Elettronica  Pag. 1 Appunti esame Elettronica  Pag. 2
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 6
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 11
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 16
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 21
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 26
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 31
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 36
Anteprima di 10 pagg. su 41.
Scarica il documento per vederlo tutto.
Appunti esame Elettronica  Pag. 41
1 su 41
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Ingegneria industriale e dell'informazione ING-INF/01 Elettronica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher chiara.milani93 di informazioni apprese con la frequenza delle lezioni di Elettronica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Bologna o del prof Garofalo Angelo.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community