35
Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012 4. Codifica binaria dell’informazione 4. Codifica binaria dell’informazione Ing. Simona Colucci

4. Codifica binaria dell’informazione

Embed Size (px)

DESCRIPTION

4. Codifica binaria dell’informazione. Ing. Simona Colucci. Codifica binaria dell’informazione. Tutte le informazioni vanno tradotte in bit (organizzati poi in byte o parole ): Numeri naturali Numeri interi(con segno) Numeri frazionari Numeri reali Caratteri Immagini - PowerPoint PPT Presentation

Citation preview

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

4. Codifica binaria dell’informazione4. Codifica binaria dell’informazione

Ing. Simona Colucci

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Codifica binaria dell’informazioneCodifica binaria dell’informazione

• Tutte le informazioni vanno tradotte in bit (organizzati poi in byte o parole):– Numeri naturali– Numeri interi(con segno)– Numeri frazionari– Numeri reali– Caratteri– Immagini

• Nell’interazione con il calcolatore la codifica in binario e la decodifica in formato leggibile sono trasparenti all’utente

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Numeri naturali: Numeri naturali: Sistemi di numerazioneSistemi di numerazione

• Un sistema di numerazione è composto da:– Insieme finito di simboli o cifre– Regole che permettono di rappresentare i numeri naturali

• Classificazione– Sistemi additivi (Es. sistema romano parzialmente):

• Ogni cifra assume un valore prefissato• Il numero si ottiene addizionando le cifre che lo compongono• Impossibilità di rappresentare numeri molto grandi e difficoltà di

esecuzione delle operazioni matematiche– Sistemi posizionali (Es. sistema decimale):

• Le cifre acquistano un peso diverso a seconda della posizione che occupano

• Un numero generico di m cifre è rappresentato in base p dalla sequenza:

an, an-1, an-2,..., a0

• Compattezza di rappresentazione anche per numeri molto grandi e facilità di esecuzione delle operazioni

an : cifra più significativa a0 : cifra meno significativa n = m-1ai {0, 1, ..., p-1}

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Numero naturale N, composto da m cifre, in base p:

• Rappresentazione

Sistemi posizionali:Sistemi posizionali:Rappresentazione in base Rappresentazione in base pp

n

i

ii

nn

nnp papapapapaN

0

00

11

11 ...

• Spazio di Rappresentazione: numeri nell’intervallo discreto [0 , pm - 1]

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Il sistema decimale: Il sistema decimale: rappresentazione in base 10rappresentazione in base 10

• Sistema posizionale– Esempio: 123 = 100 +20 +3

• Base: p = 10

• Insieme di simboli: ai {0,1,2,3,4,5,6,7,8,9}

• Numero naturale N di m cifre:– Rappresentazione:

• N10 = an·10n+an- 1·10n-1+…+a0·100 n=m-1

• Esempio, con m=3:58710 = 5·102+8·101+7·100

– Spazio di rappresentazione: intervallo discreto [0, 10m-1]

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

• Sistema posizionale• Base binaria: p=2• Insieme di simboli: ai {0, 1}

– Simboli chiamati bit (binary digit)– Otto bit chiamati byte

• Numero naturale N di m cifre:– Rappresentazione:

• N2 = an·2n+ an-1·2n-1+…+a0·20 n=m-1• Esempio, con m=5:

110112 = (1·24+1·23+0·22+1·21+1·20)10 = 2710

– Spazio di rappresentazione:• intervallo discreto [0 , 2m -1]• Esempio con m=8: [000000002 , 111111112],

ovvero: [010 , 25510]

Sistema binario:Sistema binario:Rappresentazione in base dueRappresentazione in base due

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Il sistema binario: unità di misuraIl sistema binario: unità di misura

• kilobyte(Kb) = 210 byte = 1024 byte• megabyte(Mb) = 220 byte = 1048576 byte• gigabyte(Gb) = 230 byte = 1073741824 byte• terabyte(Tb) = 240 byte = 1099511627776 byte

Le approssimazioni a potenze di 10:• sono accettabili solo per i kilobyte: 1024 ~1000• sono inaccettabili per 104 ,105 ,106

• le lettere maiuscole nel simbolo indicano che non si tratta delle potenze di 10 del sistema internazionale

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Basi ottale ed esadecimaleBasi ottale ed esadecimale

• Rappresentazione in base 8:– Base ottale: p=8;– Insieme di simboli ai {0, 1, 2, 3, 4, 5, 6, 7}– Numero N di m cifre:

• Rappresentazione: N8 = (an·8n+an-1·8n-1+…+ a0·80)10 n=m-1

Es. 2348 = (2·82+3·81+4·80)10 = 15610

• Spazio di rappresentazione: [0, 8m-1]

• Rappresentazione in base 16:– Base esadecimale: p=16; – Insieme di simboli ai {0, 1, 2, …, 9, A, B, C, D, E, F}

• Notare: “11” al posto di “B” e “15” al posto di “F”, i loro equivalenti in base dieci

– Numero N di m cifre: • Rappresentazione: N16 = (an·16n+an-1·16n-1+…+ a0·160)10 n=m-1

Esempio: B7F16 = (11·162+7·161+15·160)10 = 294310

• Spazio di rappresentazione: [0, 16m-1]

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Conversioni di baseConversioni di base

• Per convertire da base p a base 10:

n

i

ii

nn

nnp papapapapaN

0

00

11

11 ...

Esempio: 110112 = (1·24+1·23+0·22+1·21+1·20)10 = 2710• Per convertire da base dieci a base due:

– Metodo delle divisioni successive: esempio331:2 = 165 con resto di 1165:2 = 82 con resto di 182:2 = 41 con resto di 041:2 = 20 con resto di 1 (331)10=(101001011)2

20:2 = 10 con resto di 010:2 = 5 con resto di 05:2 = 2 con resto di 12:2 = 1 con resto di 01:2 = 0 con resto di 1

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Conversioni di baseConversioni di base

• Le basi ottale ed esadecimale sono di interesse informatico per la facilità di conversione, con il metodo”per parti”:– Da base 2 a base 8: si converte a gruppi di tre bit,

traducendo ciascuna tripla nella corrispondente cifra ottale

(001010110111)2=(1267)8

– Da base 2 a base 16: si converte a gruppi di quattro bit, traducendo ciascuna quadrupla nella corrispondente cifra esadecimale

(001010110111)2=(2B7)16

• La base ottale ed esadecimale consentono una grande sintesi di rappresentazione

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

SommaSomma

• Le cifre sono 0 e 1 ed il riporto può essere solo 1

Riporto precedente

Somma Risultato Riporto

0 0 + 0 0 0

00 + 11 + 0

1 0

0 1 + 1 0 1

1 0 + 0 1 0

10 + 11 + 0

0 1

1 1 + 1 1 1

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Esempio di somma e carry Esempio di somma e carry

• Esempio:

1 riporto0101 + (510)

1001 = (910)

------1110 (1410)

111 riporti 1111 + (1510)

1010 = (1010)

------- carry 11001 (2510 se uso 5 bit;

910 se considero 4 bit: errato)

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Numeri interiNumeri interi

• Includono anche i numeri negativi • Rappresentati tramite il segno ed il valore del

numero• Codifica binaria secondo uno delle due modalità

seguenti:– Rappresentazione in modulo e segno– Rappresentazione in complemento a due

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Modulo e segnoModulo e segno

• In un numero di m bit il primo bit è utilizzato per memorizzare il segno:– “1” numero negativo– “0” numero positivo

• Spazio di rappresentazione: tra -(2m-1-1) e (2m-1-1)• Fenomeno dello zero positivo e negativo

Num. intero, base 10 Num. intero, base due, modulo e segno

–3 111

–2 110

–1 101

–0 100

+0 000

+1 001

+2 010

+3 011

Esempio m=3

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

• Usando m bit: (-N)CPL2 = (2m - N10)2

• Spazio di rappresentazione: intervallo discreto [-2m-1 , 2m-1 - 1]– Asimmetria tra negativi e positivi – Esempio (m=8): [-128, +127], perché -27 = -128 e 27 - 1 = +127

• Tutti i numeri negativi cominciano con il bit più significativo posto a “1”, mentre tutti i positivi e lo zero iniziano con uno “0”

Complemento a due (CPLComplemento a due (CPL22))

Num. intero base 10 TrasformazioneNum. intero, base 2,

CPL2, m=3

-4 8 - 4 = 4 410 = 100

-3 8 - 3 = 5 510 = 101

-2 8 - 2 = 6 610 = 110

-1 8 - 1 = 7 710 = 111

0 nessuna 010 = 000

1 nessuna 110 = 001

2 nessuna 210 = 010

3 nessuna 310 = 011

Esempio m=3(-N)CPL2 =(23-N10)2

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Complemento a due (CPLComplemento a due (CPL22))

• Metodo alternativo per ottenere (-N)CPL2

– Complementare i bit della rappresentazione binaria del modulo N(cambiare gli 1 in 0 e viceversa)

– Sommare 1 al risultato ottenuto

Esempio: -N= -3 N=(3)10=(011)2

complemento ad 1 100

complemento a 2 101

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Somma e sottrazione in CPLSomma e sottrazione in CPL22

• Somma: come per i naturali

• Sottrazione: N1 - N2 = N1 + (-N2)CPL2

• Carry:– Il carry finale non viene considerato!

• Overflow:– Se, sommando due interi di m bit dotati di segno concorde,

ottengo un risultato di segno discorde (sempre considerando m bit), allora si ha un overflow (il risultato non è codificabile su m bit) e l’operazione è errata

– L’overflow non può verificarsi se gli operandi sono di segno discorde

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Somma e sottrazione in CPLSomma e sottrazione in CPL22

Esempi: m=7 spazio di rappresentazione [-64, +63]

+5 00101

+8 01000

+13 01101

+5 00101

-8 11000

-3 11101

-5 11011

+8 01000

+3 (1)00011

-63 1000001

-8 1111000

-71 [1](1)0111001

OVERFLOW

RIPORTO RIPORTO

•Perché ignorare il riporto finale in CPL2 ad m bit?

Esempio: base=10

10180-9878=302=

= 10180 -9878 +10000-10000=

= 10180+(10000-9878)-10000= (10000-9878)- è il complemento a 10 del sottraendo: (9878)CPL10

= 10180+122-10000= si addiziona al minuendo il complemento a 10 del sottraendo

= 10302-10000= questa sottrazione equivale a trascurare la cifra piu significativa

= 302

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Rappresentazione:• Relativa alla parte frazionaria• Ottenuta tramite la formula

Spazio di rappresentazione:• Per un numero di n cifre in base p, posso rappresentare

numeri nell’intervallo continuo: [0 , 1-p-n]Errore di approssimazione:• minore di p-n

Numeri frazionariNumeri frazionari

12

21

1 ...ni

ii

nnp papapapaN

Esempi con n=3:

• base 10: Rappresentazione: (0,587)10= (5·10-1+8·10-2+7·10-3)

Spazio di rapp.: [0, 1-10-3] = [0, 0.999] Errore : minore di 0.001

• base 2: Rappresentazione: (0,101)2 = (1·2-1+0·2-2+1·2-3)10 = (0,625)10

Spazio di rapp.: [0, 1-2-3] Errore : minore di 2-3

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Conversioni di base parte Conversioni di base parte frazionariafrazionaria

• Da base 2 a base 10:– Secondo la formula vista prima

• Da base 10 a base 2:– Si moltiplica progressivamente per 2 la parte frazionaria– Si prendono le parti intere di ciascun prodotto dalla più alla

meno significativa, con numero di bit proporzionale all’accuratezza

– Esempio: 0.587100.587*2= 1.174 parte intera 1 parte frazionaria 0.1740.174*2= 0.348 parte intera 0 parte frazionaria 0.3480.348*2= 0.696 parte intera 0 parte frazionaria 0.6960.696*2= 1.392 parte intera 1 parte frazionaria 0.3920.392*2= 0.784 parte intera 0 parte frazionaria 0.7840.784*2= 1.568 parte intera 1 parte frazionaria 0.568…..

Risultato : 0.1001 con quattro cifre e approssimazione accurate entro il limite 2 -4

0.100101 con sei cifre e approssimazione accurate entro il limite 2-6

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Numeri realiNumeri reali

• Approssimati tramite numeri razionali• Rappresentazione relativa sia alla parte intera

che a quella frazionaria• Modalità di rappresentazione alternative:

– virgola fissa– virgola mobile

• numeri molto grandi con poche cifre• numeri molto piccoli con precisione

• Operazioni di somma e differenza tramite allineamento dei numeri

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Virgola fissaVirgola fissa

• Uso di m bit per parte intera e n bit per parte frazionaria con n ed m fissi– Esempio (m=8, n=6, tot. 14 bit): 123,58710

12310 = 011110112

0,58710 100101 2

123,58710 01111011, 100101 2

• m e n scelti in base alla precisione che si vuole tenere • Precisione costante lungo l’asse reale R:

0

R

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Virgola mobile (floating point)Virgola mobile (floating point)

• Il numero è espresso come: r = m·bn

– m e n sono in base p – m: mantissa (numero frazionario con segno)– b: base della notazione esponenziale (numero naturale)– n: caratteristica (numero intero)– Esempio (p=10, b=10):

-331,6875 = -0,3316875103 m = -0,3316875 n = 3

• Uso l1 bit e l2 bit per codificare m e n (incluso il segno):

0

R

• Precisione variabile lungo l’asse reale R:– valori rappresentabili molto vicini nell’intorno di 0– valori rappresentabili molto lontani nell’intorno del numero

massimo esprimibile, positivo o negativo

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

• Quando la mantissa comincia con una cifra diversa da zero, il numero in virgola mobile si dice normalizzatoEs. –0,3316875103 è normalizzato perché la mantissa è “3316875”

• La normalizzazione permette di avere, a parità di cifre usate per la mantissa, una maggiore precisione.

Es. Uso l1=5 cifre per la mantissa:

+45,6768 +0,45676102 +0,00456104

Ho perso 0,0008

Ho perso0,0768

Virgola mobile (floating point)Virgola mobile (floating point)

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

CaratteriCaratteri

• Codifica numerica tramite 1 byte • ASCII (American Standard Code for Information Interchange)

utilizza 7 bit (estesa talvolta a 8 bit per rappresentare altri 128 caratteri)

• L’ASCII codifica: – I caratteri alfanumerici (lettere maiuscole e minuscole e numeri),

compreso lo spazio– I simboli (punteggiatura, @, #, …)– Alcuni caratteri di controllo che non rappresentano simboli

visualizzabili (TAB, LINEFEED, RETURN, BELL, ecc)– Non codifica per esempio le lettere accentate o greche

• L’ ottavo bit o un nono possono essere usati come bit di parità: rende pari il numero di 1 in modo che se esso risulta dispari ci si accorge di errori di immagazzinamento o trasmissione dati.

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Tabella ASCII (parziale)Tabella ASCII (parziale)

DEC CAR DEC CAR DEC CAR DEC CAR

DEC CAR48 0

49 1

50 2

51 3

52 4

53 5

54 6

55 7

56 8

57 9

65 A

66 B

67 C

68 D

69 E

70 F

71 G

72 H

73 I

74 J 

75 K

76 L

77 M

78 N

79 O

80 P

81 Q

82 R

83 S

84 T

85 U

86 V

87 W

88 X

89 Y

90 Z

97 a

98 b

99 c

100 d

101 e

102 f

103 g

104 h

105 i

106 j 

107 k

108 l

109m110 n

111 o

112 p

113 q

114 r

115 s

116 t

117 u

118 v

119 w

120 x

121 y

122 z

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

L’immagine digitaleL’immagine digitale

• Le immagini sono codificate come sequenze di bit• Digitalizzazione: passaggio dall’immagine alla sequenza binaria• L’immagine è suddivisa in una griglia di punti (detti pixel)• Ogni pixel è descritto da un numero (su 8, 16, 24, o 32 bit) che

ne rappresenta il colore(un particolare tono di grigi nelle immagini bianco e nero)– Es. con 8 bit 28 = 256 combinazioni di colore

• Per decodificare la sequenza binaria che codifica l’immagine bisogna conoscere:– le dimensioni dell’immagine : larghezza e altezza in pollici del

rettangolo in cui è contenuta– la risoluzione dell’immagine :numero di pixel per pollice (dpi - dot

per inch)– il numero di colori o toni di grigio disponibili per ogni pixel

Codifica delle immaginiCodifica delle immagini

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

L’immagine digitaleL’immagine digitale

• Standard di codifica:– TIFF (Tagged Image File Format)– PNG (Portable Network Graphics)– JPEG

• Tecniche di compressione – utilità:

• ridurre lo spazio necessario a rappresentare i punti dell’immagine• ridurre la quantità di memoria necessaria a memorizzare l’immagine• ridurre il tempo necessario a trasmettere l’immagine tra i dispositivi

– classificazione:• compressione lossless : comprime l’immagine senza deteriorarla (TIFF)

– adatte solo per immagini con ampie aree monocromatiche. in cui sequenze di punti con la stessa tonalità vengono codificate in forma compatta

• compressione lossy: comprimono (molto di più), ma deteriorano l’immagine (JPEG , PNG)

– adatte ad immagini con molti colori, memorizzano le differenze cromatiche tra gruppi di pixel

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Operazioni con le informazioniOperazioni con le informazioni

• Aritmetiche– Es. Somma e differenza viste prima

• Logiche– Utilizzano l’algebra di Boole

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Algebra di BooleAlgebra di Boole

• Formalismo basato su tre operazioni logiche (dette anche operazioni booleane):– AND operatore binario– OR operatore binario– NOT operatore unario

• Le operazioni booleane si applicano ad operandi che possono assumere solo due valori: vero o falso

• Ogni formula scritta in algebra di Boole può assumere solo due valori: vero o falso

• Rappresentando vero con “1” e falso con “0” un bit può rappresentare un operando o il valore di una formula in algebra di Boole

• Tavole di verità: rappresentano il valore di una espressione logica(ottenuta a partire dai tre operatori logici) in funzione del valore degli operandi

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Operatori booleaniOperatori booleani

• Tavole di verità:

A B A AND B

0 0 0

0 1 0

1 0 0

1 1 1

A B A OR B

0 0 0

0 1 1

1 0 1

1 1 1

A NOT A

0 1

1 0

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Operatori booleani: proprietàOperatori booleani: proprietà

• Commutativa:– A OR B = B OR A– A AND B = B AND A

• Distributiva di uno verso l’altro:– A OR (B AND C) = (A OR B) AND (A OR C)– A AND (B OR C) = (A AND B) OR (A AND C)

• Leggi di De Morgan:– A AND B = NOT ((NOT A) OR (NOT B))– A OR B = NOT ((NOT A) AND (NOT B))

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Espressioni booleaneEspressioni booleane

• Regole di precedenza:– NOT ha la massima precedenza– poi segue AND– infine OR

• Se voglio alterare queste precedenze devo usare le parentesi (a volte usate solo per maggior chiarezza)

• Per valutare un espressione booleana si usa la tabella della verità

• Due espressioni booleane sono equivalenti se e solo se le tabelle della verità sono identiche

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Dalla formula alla tabellaDalla formula alla tabella

• Vediamo un esempio, per l’espressione:

D = A AND NOT (B OR C)

A B C D = A AND NOT (B OR C)

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 0

1 0 0 1

1 0 1 0

1 1 0 0

1 1 1 0

Sistemi Sistemi InformativiInformativiDEE - Politecnico di BariDEE - Politecnico di Bari

Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. Fondamenti di Informatica CDL in Ingegneria Gestionale- A.A. 2011-2012 2011-2012

Dalla tabella alla formulaDalla tabella alla formula

• Se conosco la tabella della verità, posso ricostruire la formula logica. Partiamo dalla tabella:

C1 = (NOT A AND B) OR (A AND NOT B) OR (A AND B)

A B C1

0 0 0

0 1 1

1 0 1

1 1 1

NOT A AND BA AND NOT BA AND B