Rappresentazione dell’informazione
description
Transcript of Rappresentazione dell’informazione
Rappresentazione Rappresentazione dell’informazionedell’informazione
Claudia Raibulet
Rappresentazione di numeriRappresentazione di numeri I sistemi di numerazione definiscono:
• L’insieme dei simboli base (CIFRE)
• L’insieme di regole che permettono di definire la rappresentazione di un numero mediante una stringa di cifre
• L’insieme di operazioni
Il numero di simboli utilizzati nel sistema di numerazione è detto la base del sistema
Lo stesso numero è rappresentato da numerali diversi in diversi sistemi:
Esempio:• 156 nel sistema decimale –> CLVI in cifre romane
Sistemi posizionaliSistemi posizionali Il numero rappresentato da una cifra dipende dalla cifra
stessa e dalla posizione occupata dalla cifra nella stringa in cui si trova
Esempio: • Il sistema decimale: base = 10, cifre = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
• Numero 32145 = 3*104 + 2*103 + 1*102 + 4*101 + 5*100
In generale:• Il numero cn cn-1 cn-2 …c2 c1 cn in base b rappresenta:
cn*bn + cn-1*bn-1 + cn-2*bn-2 + … + c2*b2 + c1*b1 + c0*b0
dove ci<b
Sistema binarioSistema binario
Base = 2, cifre = {0, 1} Esempio:
1110012 = 1*25 + 1*24 + 1*23 + 0*22 + 0 *21 + 1*20
Conversione dalla base 2 alla base 10:1110012 = 1*25 + 1*24 + 1*23 + 0*22 + 0 *21 + 1*20
= 32 + 16 + 8 +0 + 0 + 1 = 57
Sistema binarioSistema binario Conversione dalla base 10 alla base 2:
• dato N>0 intero dividiamo N per 2, otteniamo un quoto Q0 ed un resto R0
• dividiamo Q0 per b, otteniamo un quoto Q1 ed un resto R1
• ripetiamo finché Qn = 0
Esempio: convertire 123 decimale in binario: Q R
123 : 2 61 1
61 : 2 30 1
30 : 2 15 0
15 : 2 7 1
7 : 2 3 1
3 : 2 1 1
1 : 2 0 1
=> 12310 = 11110112
Sistema binarioSistema binarioCon n bit si rappresentano i numeri da 0 a 2n-1
n = 2
00011011
n = 3
000001010011100101110111
n = 4
00000001001000110100010101100111
10001001101010111100110111101111
Sistema ottaleSistema ottale
Base 8, cifre = {0, 1, 2, 3, 4, 5, 6, 7} Esempio:
64358 = 6*83+4*82 +3*81 + 5*80
Conversione dalla base 8 alla base 10:64358 = 6*83+4*82 +3*81 + 5*80
= 3072 + 256 + 24 + 5 = 3357
Con n bit si rappresentano i numeri da 0 a 8n-1
Sistema ottaleSistema ottale Conversione dalla base 10 alla base 8:
• dato N>0 intero dividiamo N per 8, otteniamo un quoto Q0 ed un resto R0
• dividiamo Q0 per b, otteniamo un quoto Q1 ed un resto R1• ripetiamo finché Qn = 0
Esempio: convertire 123 decimale in ottale: Q R123 : 8 15 315 : 8 1 71 : 8 0 1
=> 12310 = 1738
Sistema esadecimaleSistema esadecimale
Base 16 Cifre {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}
A16 = 1010
B16 = 1110
C16 = 1210
D16 = 1310
E16 = 1410
F16 = 1510
Sistema esadecimaleSistema esadecimale Conversione dalla base 16 alla base 10
Conversione dalla base 10 alla base 16
1AC716 = 1*163 + A*162 + C*161 + 7*160
= 1*163 + 10*162 + 12*161 + 7*160
= 4096 + 2560 + 192 +7 = 685510
Q R6855:16 428 7428 :16 26 1226 :16 1 101 :16 0 1
Conversione tra sistemi numericiConversione tra sistemi numerici Da base qualsiasi a base 10 – algoritmo:
• Consideriamo solo valori interi
• Si può applicare direttamente la definizione:
Esempi
0
0
1
1 rdrdN n
n
1010
0123
2 10)20212021(1010
1010
01
8 22)8682(26
1010
012
5 116)515354(431 E4D16 = (E·162 + 4·161 + D·160)10 = 366110
Conversione tra sistemi numericiConversione tra sistemi numerici
Da base 10 a base qualsiasi – algoritmo:• se dividiamo il valore N (il numerro) per la base b (la
base qualsiasi) si ottiene un quoziente q0 e un resto d0 che è la cifra di peso inferiore (peso zero) del valore N nella base b
• Ripetendo il procedimento si ricavano le cifre del valore nella base desiderata (i resti delle divisioni) a partire dal posizione meno significativa
• Il processo di divisione si arresta quando il quoziente ottenuto è nullo e l’ultimo resto costituisce la cifra di peso maggiore
Conversione tra sistemi numericiConversione tra sistemi numerici
Esempio: il valore 10610 e’ rappresentato in binario:
106 2 0 53 2 1 26 2 d0 0 13 2 d1 1 6 2 d2 0 3 2 d3 1 1 2 d4 1 0 d5
d6
d6d5d4d3d2d1d0
Risultato: 1 1 0 1 0 1 02
Esercizi – cambio di baseEsercizi – cambio di base
521 da base 8 a base 10 23 da base 10 a base 2 67 da base 10 a base 2 A8E da base 16 a base 10 329 da base 10 a base 16 321 da base 8 a base 2
Conversione da binario a ottale e Conversione da binario a ottale e viceversaviceversa
Per passare da base 2 a base 8 si divide il numero in base 2 in gruppi di tre cifre a partire da destra (da LSB) e si sostituiscono tali gruppi con le corrispondenti cifre ottali
Esempio:
Per passare da base 8 a base 2 si rappresenta ogni cifra del numero in base 8 con la sua rappresentazione in binario su tre cifre
Esempio:
1 100 101 010 1112 = 145278
512678 = 101 001 010 110 1112
Conversione da esadecimale a binario Conversione da esadecimale a binario e viceversae viceversa
Per passare da base 2 a base 16 si divide il numero in base 2 in gruppi di quatro cifre a partire da destra (da LSB) e si sostituiscono tali gruppi con le corrispondenti cifre esadecimali
Esempio:
Per passare da base 16 a base 2 si rappresenta ogni cifra del numero in base 16 con la sua rappresentazione in binario su quatro cifre
Esempio:
101 1001 0101 01112 = 595716
A263716 = 1010 0010 0110 0011 01112