Informatica
This presentation is the property of its rightful owner.
Sponsored Links
1 / 26

Informatica PowerPoint PPT Presentation


  • 75 Views
  • Uploaded on
  • Presentation posted in: General

Informatica. Lezione 3 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico: 2007-2008. Codifica dei numeri. Il codice ASCII consente di codificare le cifre decimali da “0” a “9” fornendo in questo modo una rappresentazione dei numeri

Download Presentation

Informatica

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Informatica

Informatica

Lezione 3

Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale)

Anno accademico: 2007-2008


Codifica dei numeri

Codifica dei numeri

  • Il codice ASCII consente di codificare le cifre decimali da “0” a “9” fornendo in questo modo una rappresentazione dei numeri

  • Per esempio: il numero 324 potrebbe essere rappresentato dalla sequenza di byte:

    00110011 00110010 00110100

    3 2 4

  • Ma questa rappresentazione non è efficiente e soprattutto non è adatta per eseguire le operazioni aritmetiche sui numeri

  • Sono stati pertanto studiati codici alternativi per rappresentare i numeri in modo efficiente ed eseguire le usuali operazioni aritmetiche


Codifica dei numeri il sistema decimale

Codifica dei numeri (il sistema decimale)

  • La rappresentazione dei numeri con il sistema decimale può essere utilizzata come spunto per definire un metodo di codifica dei numeri all’interno degli elaboratori

    • Esempio: la sequenza di cifre 324 viene interpretato come:

      3 centinaia + 2 decine + 4 unità

      324 = 3 x 100 + 2 x 10 + 4 x 1

      324 = 3 x 102 + 2 x 101 + 4 x 100

    • 3 è la cifra più significativa

    • 4 è la cifra meno significativa


Codifica dei numeri il sistema decimale1

Codifica dei numeri (il sistema decimale)

  • In generale la sequenza cn cn-1cn-2 …c1c0 (ogni “ci” è una cifra compresa tra “0” e “9”) viene interpretata come:

    c0 x 100 + (c0 unità)

    c1 x 101 + (c1 decine)

    c2 x 102 + (c2 centinaia)

    cn-1 x 10n-1 +

    cn x 10n

La cifra meno

significativa

La cifra più

significativa


Codifica dei numeri il sistema decimale2

Codifica dei numeri (il sistema decimale)

  • La numerazione decimale quindi utilizza una notazione posizionale basata sul numero 10

  • La notazione posizionale può essere utilizzata in qualunque altro sistema di numerazione con base diversa di 10

    • Base: il numero di cifre disponibile nel sistema

    • In base 10, usiamo le dieci cifre 0, 1, 2, 3, 4, 5, 6, 7, 8, 9


Codifica dei numeri il sistema binario

Codifica dei numeri (il sistema binario)

  • Nel sistema di numerazione binario (base 2) i numeri vengono codificati utilizzando le due cifre 0 e 1

  • Nel sistema di numerazione ottale (base 8) i numeri vengono codificati utilizzando le otto cifre 0, 1, 2, 3, 4, 5, 6, 7

  • Nel sistema di numerazione esadecimale (base 16) i numeri vengono codificati utilizzando le sedici cifre 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F


Codifica dei numeri il sistema binario1

La cifra meno

significativa

Codifica dei numeri (il sistema binario)

  • In analogia con il caso decimale la sequenza cn cn-1cn-2 …c1c0 (ogni “ci” è la cifra “0” o la cifra “1”) rappresenterà il numero

c0 x 20 +

c1 x 21 +

c2 x 22 +

… +

cn-1 x 2n-1 +

cn x 2n

La cifra più

significativa


Codifica dei numeri1

La cifra meno

significativa

Codifica dei numeri

  • Caso generale: considerare un sistema con base b

  • La sequenza cn cn-1cn-2 …c1c0 (ogni “ci” è una cifra del sistema) rappresenterà il numero

c0 x b0 +

c1 x b1 +

c2 x b2 +

… +

cn-1 x bn-1 +

cn x bn

La cifra più

significativa


Codifica dei numeri2

La cifra meno

significativa

Codifica dei numeri

  • Caso generale: considerare un sistema con base b

  • La sequenza cn cn-1cn-2 …c1c0 (ogni “ci” è una cifra del sistema) rappresenterà il numero

Se necessario, convertiamo una cifra ci in un numero (per esempio, nel sistema esadecimale, “A”significa “10”, “B” significa “11”, e così via)

c0 x b0 +

c1 x b1 +

c2 x b2 +

… +

cn-1 x bn-1 +

cn x bn

La cifra più

significativa


Codifica dei numeri il sistema binario2

Codifica dei numeri (il sistema binario)

  • Esempio: la sequenza “1011” in base 2 denota il numero

    1 x 23 + 0 x 22 + 1 x 21 + 1 x 20 = 11 (in base 10)

  • Esempio: la sequenza “10011” in base 2 denota il numero

    1 x 24 + 0 x 23 + 0 x 22 + 1 x 21 + 1 x 20 = 19 (in base 10)

  • Per evitare ambiguità si usa la notazione

    10112 = 1110, 100112 = 1910


Altri basi ottale esadecimale

Altri basi: ottale, esadecimale

  • Sistema ottale

    • Utilizza una notazione posizionale basata su otto cifre (0,1,…,7) e sulle potenze di 8

    • Esempio: 1038 = 1 x 82 + 0 x 81 + 3 x 80 = 6710

  • Sistema esadecimale

    • Utilizza una notazione posizionale basata su sedici cifre (0,1,…,9,A,B,C,D,E,F) e sulle potenze di 16

    • Esempio: 10316 = 1 x 162 + 0 x 161 + 3 x 160 = 25910

    • Esempio: AC416 = 10 x 162 + 12 x 161 + 4 x 160 = 275610


Esadecimale esempio

Esadecimale: esempio

  • HTML: il linguaggio principale usato per definire l’aspetto di una pagina web (il colore dello sfondo, il layout, le tabelle ecc.)

  • In HTML, rappresentiamo i codici per i colori rosso, verde e blu usando le cifre esadecimali tra 00 e FF (0016 = 010 e FF16 = 25610)

  • I colori predefiniti di HTML (da http://en.wikipedia.org/wiki/Web_colors):


Esadecimale esempio1

Esadecimale: esempio

  • Per esempio:

    • Blu: 0000FF16 = 0000000000000000111111112

  • Si può anche definire altri colori

    • Esempio dell’uso:

      <font color=#FF8E2A>Ciao</font>


Conversione dalla base 10 alla base 2

Conversione dalla base 10 alla base 2

  • Dato un numero N rappresentato in base dieci, la sua rappresentazione in base due sarà del tipo cm cm-1cm-2 …c1c0 (le “ci” sono cifre binarie)

  • Per convertire un numero in base dieci nel corrispondente in base due si devono:

    • Trovare i resti delle divisioni successive del numero N per due

    • Leggere i resti in ordine inverso per ottenere la rappresentazione binaria di N (dalla cifra più significativa alla cifra meno significativa)


Conversione dalla base 10 alla base 21

Conversione dalla base 10 alla base 2

  • Intuitivamente: ottenere la rappresentazione binaria dalla cifra meno significativa alla cifra più significativa

cm cm-1cm-2 …c1c0


Conversione dalla base 10 alla base 22

Conversione dalla base 10 alla base 2

  • Intuitivamente: ottenere la rappresentazione binaria dalla cifra meno significativa alla cifra più significativa

cm cm-1cm-2 …c1c0


Conversione dalla base 10 alla base 23

Conversione dalla base 10 alla base 2

  • Intuitivamente: ottenere la rappresentazione binaria dalla cifra meno significativa alla cifra più significativa

cm cm-1cm-2 …c1c0


Conversione dalla base 10 alla base 24

Conversione dalla base 10 alla base 2

  • Intuitivamente: ottenere la rappresentazione binaria dalla cifra meno significativa alla cifra più significativa

cm cm-1cm-2 …c1c0


Conversione dalla base 10 alla base 25

Conversione dalla base 10 alla base 2

  • Intuitivamente: ottenere la rappresentazione binaria dalla cifra meno significativa alla cifra più significativa

cm cm-1cm-2 …c1c0


Conversione dalla base 10 alla base 26

Conversione dalla base 10 alla base 2

  • Esempio: il numero 610:

    6/2 = 3 resto 0

    3/2 = 1 resto 1

    1/2 = 0 resto 1

  • Leggendo i resti dal basso verso l’alto, si ha che la rappresentazione binaria del numero 610 è 1102

  • Per una corretta verifica basta riconvertire il risultato alla base 10

    • Cioè, calcolare 1 x 22 + 1 x 21 + 0 x 20


Conversione dalla base 10 alla base 27

Conversione dalla base 10 alla base 2

  • Perché 1102 = 610 ?

    • Considerare le seguenti equazioni:

  • c x b0 = 0 resto c

  • b

  • a1 + a2 = a1 + a2

  • b b b

  • bN = bN-1

  • b


Conversione dalla base 10 alla base 28

Conversione dalla base 10 alla base 2

  • c x 20 = 0 resto c

  • 2

  • Perché 1102 = 610 ?

    c0 x 20 = 0 resto c0

    2

    c1 x 21 + c0 x 20 = c1 x 21 resto c0

    2

    c2 x 22 + c1 x 21 + c0 x 20 = c2 x 21 + c1 x 20 resto c0

    2

  • a1 + a2 = a1 + a2

  • b b b

  • bN = bN-1

  • b


Conversione dalla base 10 alla base 29

Conversione dalla base 10 alla base 2

  • Perché 1102 = 610 ?

6/2 = 3 resto 0

3/2 = 1 resto 1

1/2 = 0 resto 1

0 x 20 +

1 x 21 +

1 x 22

= 6

1 x 22 + 1 x 21 + 0 x 20 = 1 x 21 + 1 x 20 con resto 0

2

1 x 21 + 1 x 20 = 1 x 20 con resto 1

2

1 x 20 = 0 con resto 1

2


Conversione dalla base 10 alla base 210

Conversione dalla base 10 alla base 2

  • Perché1102 = 610 ?

6/2 = 3 resto 0

3/2 = 1 resto 1

1/2 = 0 resto 1

0 x 20+

1 x 21+

1 x 22

= 6

1 x 22 + 1 x 21+ 0 x 20 = 1 x 21 + 1 x 20 con resto 0

2

1 x 21 + 1 x 20 = 1 x 20 con resto 1

2

1 x 20 = 0 con resto 1

2


Conversione dalla base 10 alla base 211

Conversione dalla base 10 alla base 2

  • Esempio: il numero 34510:

    345/2 = 172 resto 1

    172/2 = 86 resto 0

    86/2 = 43 resto 0

    43/2 = 21 resto 1

    21/2 = 10 resto 1

    10/2 = 5 resto 0

    5/2 = 2 resto 1

    2/2 = 1 resto 0

    1/2 = 0 resto 1

  • Leggendo i resti dal basso verso l’alto (in quanto si ottengono a partire dalla cifra meno significativa, l’unità), si ha che rappresentazione binaria del numero 34510 è 1010110012


Conversione dalla base 2 alla base 10

Conversione dalla base 2 alla base 10

  • Sia cm cm-1cm-2 …c1c0 un numero rappresentato in base 2, usiamo:

    cm x 2m + cm-1 x 2m-1 + cm-2 x 2m-2 + … + c1 x 21 + c0 x 20 = N10

  • Esempio: 1010110012

    1 x 28 + 0 x 27 + 1 x 26 + 0 x 25 + 1 x 24 + 1 x 23 +

    0 x 22 + 0 x 21 + 1 x 20

    =

    256 + 64 + 16 + 8 + 1

    =

    34510


  • Login