Sistema numerico ottale
# Sistema numerico ottale

Il sistema numerico ottale (spesso abbreviato come ott o oct) è un sistema numerico posizionale in base 8, cioè che utilizza solo 8 simboli (tipicamente 0, 1, 2, 3, 4, 5, 6, 7) invece dei 10 del sistema numerico decimale usato comunemente.

I numeri ottali (insieme ai numeri binari e esadecimali) vengono diffusamente utilizzati in svariati campi della scienza e della tecnica ed in particolare nell'ambito informatico (visto che una cifra ottale rappresenta esattamente tre cifre binarie). Generalmente, risulta scomodo trattare lunghe stringhe in bit: così si fa uso di sistemi numerici che consentano di esprimere in maniera più compatta le lunghe stringhe di 0 e 1.

Ecco una tabella che confronta le rappresentazioni binarie, ottali e decimali ed esadecimali dei numeri dallo zero al quindici:

| binario | ottale | decimale | esadecimale | binario | ottale | decimale | esadecimale |
| - | - | - | - | - | - | - | - |
| 0000 | 0 | 0 | 0 | 1000 | 10 | 8 | 8 |
| 0001 | 1 | 1 | 1 | 1001 | 11 | 9 | 9 |
| 0010 | 2 | 2 | 2 | 1010 | 12 | 10 | A |
| 0011 | 3 | 3 | 3 | 1011 | 13 | 11 | B |
| 0100 | 4 | 4 | 4 | 1100 | 14 | 12 | C |
| 0101 | 5 | 5 | 5 | 1101 | 15 | 13 | D |
| 0110 | 6 | 6 | 6 | 1110 | 16 | 14 | E |
| 0111 | 7 | 7 | 7 | 1111 | 17 | 15 | F |

Perciò il numero decimale settantanove, ad esempio, la cui rappresentazione binaria è 0100 1111, può essere scritto come 117 in ottale.

## Definizione matematica (conversione in base 10)

La formula per convertire un numero da ottale a decimale (dove con d si indica la cifra di posizione n all'interno del numero, partendo da 0) è

$d_{(n-1)}\;8^{(n-1)}+...+d_{0}\;8^{0}=N$

Il numero ottale $c_2$ $c_1$ $c_0$ equivale al numero $c_2$ × $8^2$ + $c_1$ × $8^1$ + $c_0$ × $8^0.$ Ad esempio $543_8,$ dove $c_2$ = 5, $c_1$ = 4, $c_0$ = 3, equivale al numero

    543 $_8$ = 5 × $8^2$ + 4 × $8^1$ + 3 × $8^0$ = 320 + 32 + 3 = 355 $_{10}.$

## Metodi di conversione

### Da ottale in binario

Dato un numero in base ottale $(c_1$ $c_2$ ... $c_n)_8$ di n cifre $(c_i)$ sono le singole cifre, ricordando che $8=2^{3}$ esso si converte in binario nel seguente modo:

* Si considera il numero ottale $(c_1$ $c_2$ ... $c_n)_8,$ si prendono singolarmente le cifre di cui è composto e si convertono rispettivamente in cifre binarie

Come è ovvio i numeri del sistema in base ottale non possono presentare le cifre 8 e 9; le cifre da 0 a 7 corrispondono esattamente a triplette di zero ed uno del sistema binario.

* Esempio 1: Dato il numero $(361)_8,$ il corrispondente numero binario è dato da:

$3=011$

$6=110$

$1=001$

Il numero binario è $(11110001)_2.$

### Da binario in ottale

Per convertire un numero dal Sistema Binario a quello Ottale si procede in modo analogo all'esempio precedente:

* Si considera il numero binario e partendo da destra si divide in gruppi di 3 cifre binarie. Se dopo l'operazione avanzano una o due cifre si aggiungono tanti zeri quanti bastano a coprire un gruppo di tre, per il criterio secondo cui 0...0100 = 100 (v. Sistema numerico binario).
* Ogni gruppo va poi convertito nel corrispondente numero ottale.
* Esempio 1: Convertire il numero $(1101001101)_2$ = $(???)_8:$

$(1101001101)_{2}=(1|101|001|101)=(001|101|001|101)=(1515)_{8}$

