1.2e - La Codifica dei Numeri - Home page istituzione trasparente
Transcript
1.2e - La Codifica dei Numeri - Home page istituzione trasparente
1.2e: La codifica Digitale dei Numeri Bibliografia Curtin, 3.6 (vecchie edizioni) Curtin, 2.5 (nuova edizione) 17 ott 2011 Questi lucidi 2 Sistema di numerazione arabo Il sistema di numerazione che utilizziamo si dice arabo. È decimale (o in base 10): esso rappresenta i numeri tramite sequenze di cifre che vanno da 0 a 9 (dieci cifre). È posizionale: simboli uguali assumono valori diversi a seconda della loro posizione nel numero I sistemi posizionali sono nati dall’esigenza di rappresentare numeri grandi con un numero limitato di cifre 17 ott 2011 svolgere calcoli in modo semplice ed efficiente. Esistono anche sistemi additivi, in cui a ogni simbolo è associato un valore numerico prefissato (come il romano) sistemi non (completamente)-posizionali. 3 17 ott 2011 La Numerazione Romana 4 Sistemi Posizionali: Base e Alfabeto I sistemi di numerazione posizionale sono caratterizzati da una base b e un alfabeto a: Base (b): è il numero degli elementi che compongono l’alfabeto. Ad esempio, nel sistema decimale, b=10. Alfabeto (a): è l’insieme dei “simboli” (detti cifre) disponibili per esprimere i numeri. A ogni cifra corrisponde un valore compreso tra 0 e (b-1). 17 ott 2011 Ad esempio, nel sistema decimale, a={0,1,2,3,4,5,6,7,8,9} 5 Esempi: Base 8 (ottale) a={0,1,2,3,4,5,6,7} Base 16 (esadecimale) a={0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} Sistema di Numerazione decimale Rappresentazione posizionale in base 10: Il “valore” di ogni numero è espresso come somma di potenze del 10 pesate moltiplicato il valore del simbolo corrispondente 17 ott 2011 La notazione posizionale può essere usata in qualunque altro sistema di numerazione (cioè con base diversa da 10) 6 In un calcolatore viene solitamente usata la base 2. Sistema di Numerazione binario In analogia con il caso decimale, la sequenza cncn-1cn-2 … c1c0 (con ci che vale 0 o 1) rappresenta il numero cn2n + cn-12n-1 + cn-22n-2 + … + c121 + c020 17 ott 2011 Ad esempio, la sequenza binaria 1110 rappresenta il numero 14 7 1x23 + 1x22 + 1x21 + 0x20 1x8 + 1x4 + 1x2 + 0x1 14 = 17 ott 2011 Sistema di Numerazione binario 8 17 ott 2011 Sistema di Numerazione binario 9 Conversione binario → decimale BINARIO → DECIMALE: Basta rappresentare usando una rappresentazione decimale come potenze di B e poi fare i conti. Esempi 10012 17 ott 2011 1x23 + 0x22 + 0x21 + 1x20 = 1x8 + 0x4 + 0x2 + 1x1 = 910 10 10102 1x23 + 0x22 + 1x21 + 0x20 = 1x8 + 0x4 + 1x2 + 0x1 = 1010 Conversione decimale → binario Algoritmo delle divisioni successive Per convertire in base 2 un numero rappresentato in base 10, si procede così: x 17 ott 2011 A. Si divide x per 10; il resto ottenuto costituisce l’ultima cifra a destra del numero espresso in base 2; 11 B. Si divide nuovamente per 2 il quoziente ottenuto; il nuovo resto è la cifra, in base 2, immediatamente a sinistra di quella ottenuta precedentemente; C. Si ripete l’operazione quoziente nullo. B fino a ottenere un Conversione decimale binario DECIMALE BINARIO 11510 = 11100112: 115 1 17 ott 2011 d0 12 d1 2 57 1 2 28 0 d2 2 14 0 d3 2 7 1 d4 2 3 1 d5 2 1 1 d6 2 0 Esercizi (in aula) Trasformare in decimale i seguenti numeri binari: 10011002 01011002 000100112 Trasformare in binario i seguenti numeri decimali: 17 ott 2011 2510 3810 13 910 1710 Soluzioni (in aula) 10011002 = 7610 000100112 =1910 01011002 =4410 2510=110012 910=10012 17 ott 2011 1710=100012 14 3810=1001102 Esercizi (a casa) Trasformare in decimale i seguenti numeri binari: 11010012 1101112 100012 1000002 1001112 1000112 17 ott 2011 Trasformare in binario i seguenti numeri decimali: 15 3910 4210 9510 1510 1710 3510 Soluzioni (a casa) 11010012= 10510 1101112 = 5510 17 ott 2011 3910=1001112 4210=1010102 16 1000002 =3210 9510=10111112