Sistemi di numerazione

Da Wikiversità, l'apprendimento libero.
lezione
lezione
Sistemi di numerazione
Tipo di risorsa Tipo: lezione
Materia di appartenenza Materia: Fondamenti di informatica e programmazione in C

Un sistema di numerazione è un insieme di simboli e regole atti a dar luogo ad una codifica numerica, in altre parole esso serve a produrre una sequenza di caratteri che abbia una corrispondenza biunivoca con la grandezza numerica da rappresentare.
Tutti gli innumerevoli metodi che l'uomo ha escogitato per rappresentare graficamente i numeri, di per sè entità astratte, possono essere classificati per i nostri fini in:


  • sistemi non posizionali
  • sistemi posizionali


Un esempio di sistema di numerazione posizionale è quello romano, nel quale le regole per il calcolo del valore corrispondente ad una data sequenza di simboli dipendono dalla posizione nella sequenza stessa.
Ad esempio i numeri romani e hanno valori diversi, rispettivamente 9 e 11, nonostante siano stati ottenuti utilizzando gli stessi simboli grafici, la stessa cosa si verifica per 19 e 91 che pure sono ottenuti con gli stessi simboli grafici ed hanno valore 'diciannove' e 'novantuno'. Nel primo caso infatti, il numero rappresentato si ottiene sottraendo al simbolo (10) il simbolo (1) scritto alla sua sinistra, nel secondo invece, gli stessi due valori anziché essere sottratti vengono sommati solo perché è cambiato il loro ordine di rappresentazione.
Vien da se che un simile algoritmo di codifica numerica richiede meccanismi alquanto complessi e macchinosi allorché si abbia la necessità di effettuare delle operazioni matematiche con i numeri rappresentati.

Questo tipo di difficolta viene superata con l'introduzione dei sistemi posizionali...

La rappresentazione polinomiale[modifica]

sia definita la base b con la quale vogliamo rappresentare i nostri numeri:

sia c una generica cifra del nostro numero tale che:

un qualsiasi numero positivo n di N cifre: può essere rappresentato tramite:

il numero minimo N di cifre necessario per rappresentare n in base b è dato da:

Il Sistema Binario[modifica]

Il sistema binario si basa su due valori, sintetizzati in 1 e 0. Tuttavia possono essere immaginati anche come

1 0
Vero Falso
Acceso Spento
Giusto Sbagliato

ecc...

Il sistema Ottale[modifica]

Il sistema ottale è basato su 8 simboli, solitamente sono 0,1,2,3,4,5,6,7 Questo sistema veniva utilizzato in alcuni calcolatori, oramai caduti in disuso.

Il sistema Esadecimale[modifica]

Il sistema esadecimale è basato su 16 simboli: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F Questo sistema viene utilizzato molto spesso, ad ogni simbolo esadecimale corrispondono esattamente 4 bits.

Conversione di un numero da un sistema posizionale ad un altro[modifica]

La conversione da un sistema ad un altro è molto semplice. Per il passaggio da decimale ad altri sistemi basta dividere il numero X per le cifre massime del sistema utilizzato eppoi invertire l'ordine dei resti. Ad esempio da Decimale(base 10) a Binario(base 2)

20 / 2 = 10 resto 0
10 / 2 = 5 resto 0
5 / 2 = 2 resto 1
2 / 2 = 1 resto 0
1 / 2 = 0 resto 1

ora dall'ultimo resto in sù; l'equivalente di 20(10) è 10100(2)

Stessa cosa per altri sistemi come quello esadecimale (base 16)

20 / 16 = 1 resto 4
1 / 16 = 0 resto 1

l'equivalente di 20(10) sarà 14(16)

_____________________________

La conversione da un altro sistema a decimale è possibile in questo modo: partendo dalle ultime cifre a destra si moltiplica quel numero per la base del sistema di numerazione utilizzato elevato alla distanza dal primo numero; poi i risultati, sommati, daranno l'equivalente in decimale.

Esempio:

_____________________________ Come abbiamo visto prima un numero può essere riscritto in forma polinomiale:

Precisione di una rappresentazione[modifica]

Operazioni aritmetiche nel sistema binario[modifica]

Rappresentazione di un numero attraverso il complemento alla base[modifica]

Gli standard della rappresentazione binaria adottati dai calcolatori elettronici[modifica]