15
Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rappresentazione dei dati e codifica delle informazioni Seconda parte

Embed Size (px)

Citation preview

Page 1: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rappresentazione dei dati e codifica delle informazioni

Seconda parte

Page 2: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Posizionale pesato

In generale, per rappresentare dei numeri, posso procedere come fin qui esposto: per codificare un sottoinsieme di numeri di cardinalità N uso una stringa di m simboli di un insieme K, scegliendo arbitrariamente la sequenza dei simboliUna scelta indicata è il sistema di numerazione posizionale.

Page 3: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Posizionale pesato

Ogni simbolo dell’insieme K ha un peso che è funzione della sua posizione all’interno della rappresentazione.Esempio: Posso rappresentare il numero

duemilatrecentoventisette come: 2327 = 2*103 +3*102 +2*101 +7*100 Il simbolo “2” ha un peso diverso a seconda

della sua posizione.

Page 4: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rappresentazione posizionale dei numeri

Numeri e rappresentazione dei numeri:quindici

15 XV 11112

Rappresentazione posizionale: base di rappresentazione (es. 10), si usano 10 simboli (cifre) che rappresentano i numeri da 0 a 9

15 = 1 101 + 5 100

Il numero viene rappresentato dalla lista di cifre

Page 5: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rappresentazione posizionale dei numeri

Base di rappresentazione (b)Si usano b cifre (simboli associati ai numeri da 0 a b -1)

n = am bm + am-1 bm -1 + + a1 b1 + a0 b0 = i ai

bi

Rappresentazione:( am , am -1 , , a1 , a0 )

In queste ipotesi la rappresentazione è unica

Page 6: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Base binaria

B=2; cifre = { 0 , 1 }rappresentazione di quindici:

111115 = 8 + 4 + 2 + 1

rappresentazione di duecentododici:11010100

212 = 128 + 64 + 16 + 4

Page 7: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Conversione da rappresentazione a numero

Da base 2:

110101002 0 20 + 0 21 + 1 22 + 0 23 + 1 24 + 0 25 + 1 26 + 1 27 =21210

Page 8: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Conversioni da numero a rappresentazione

In base 2:212 2

0 106 20 53 2

1 26 20 13 2

1 6 20 3 2

1 1 21 0

divisioni successive per 2 fino a un quoto uguale a 0i resti (dall’ultimo al primo) danno la sequenza di cifre

Page 9: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Base esadecimale

b = 16, cifre = {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F }212 : 16 = 13 col resto di 4

21210 = D416

notazioni pratiche: D4H, 0xD4La codifica in binario delle 16 cifre esadecimali richiede 4 bitConversione esadecimale-binario:

110101002 1101 0100 D416rappresentazione

in base 2 di 13 su 4 bitrappresentazionein base 2 di 4 su 4 bit

Page 10: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Base ottale

b = 8, cifre = { 0,1,2,3,4,5,6,7}

La codifica in binario delle 8 cifre ottali richiede 3 bitConversione ottale-binario:110101002 011 010 100 3248

rappresentazione in base 2 di 3 su 3 bit

rappresentazionein base 2 di 4 su 3 bit

212 84 26 8

2 3 83 0

21210 = 3248

rappresentazionein base 2 di 2 su 3 bit

Page 11: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Base decimale: Sistemi BCD

Per b=10 si ha la tradizionale numerazione decimale (Binary Coded Decimal)Per rappresentare le cifre in bit occorrono almeno 4 bit (23<10<24)Con la numerazione decimale, un numero è rappresentato in cifre e ciascuna cifra è codificata in bit.

Page 12: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rappresentazione dei caratteri

Codice ASCII (American Standard Code for Information Interchange)

Rappresentazione su 7 bit: 128 combinazioni da 0 a 31: “caratteri” di controllo da 32 a 47: interpunzione e caratteri speciali da 48 a 57: cifre decimali da 58 a 64: interpunzione e caratteri speciali da 65 a 90: lettere maiuscole dell’alfabeto inglese da 91 a 96: interpunzione e caratteri speciali da 97 a 122: lettere minuscole dell’alfabeto inglese da 123 a 127: caratteri speciali

Page 13: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rappresentazione dei caratteri

Relazioni tra caratteri e numeri le stringhe di bit non hanno significato di

per se: a ogni carattere corrisponde un numero da 0 a 255

Ordinamento dei caratteri: rispettato l’ordinamento relativo tra: cifre,

maiuscole, minuscole spazio < cifre < maiuscole < minuscole

Page 14: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Estensioni del codice ASCII

Codice ASCII esteso i caratteri da 128 a 255 rappresentano

vari caratteri speciali, simboli matematici e lettere non appartenenti all’alfabeto inglese

Lo standard UNICODE rappresentazione su 16 bit compatibile

con il codice ASCII meccanismi di estensione per superare il

limite di 65536

Page 15: Rappresentazione dei dati e codifica delle informazioni Seconda parte

Rilevazione e correzione degli errori

Natura degli erroriCodici ridondanti Rilevazione e correzione degli erroriBit di parità: si aggiunge un bit in modo che il numero di 1 sia pari:

00101101 00101101 001101000 01101000 1

L’errore su un bit viene rilevato (non corretto)

011010001 011000001