Cambio di base da ottale a binario.
Ciao a tutti. Questo è il mio primo post e spero di non sbagliare sezione in cui inserire la discussione.
Domanda: perché convertendo un numero ottale (esadecimale) in numero binario si può sostituire ad ogni cifra del numero ottale la rispettiva terna (quaterna) di cifre binarie?
Domanda: perché convertendo un numero ottale (esadecimale) in numero binario si può sostituire ad ogni cifra del numero ottale la rispettiva terna (quaterna) di cifre binarie?
Risposte
Perché in binario con tre cifre rappresenti i numeri che vanno dallo zero al sette che sono proprio gli otto simboli usati in ottale (ed analogamente in esadecimale: in binario con quattro cifre rappresenti i numeri dallo zero al quindici)
Cordialmente, Alex
Cordialmente, Alex
Ciao Alex.
C'è una dimostrazione?
C'è una dimostrazione?
Quale dimostrazione? Scherzi? Corrispondenza biunivoca ti dice niente?
Fai la stessa tabella per l'esadecimale ...
Decimale | Binario | Ottale |
---|---|---|
000 | 0 | 1 |
1 | 2 | 010 |
3 | 011 | 3 |
100 | 4 | 5 |
5 | 6 | 110 |
Fai la stessa tabella per l'esadecimale ...
No, non scherzavo.
La tabella mi è chiara. Non so se la questione sia banale, ma non riesco a comprendere il principio per cui si può iterare la sostituzione delle terne (quaterne) per ciascuna cifra di un numero ottale (esadecimale).
Se c'è qualcuno armato di pazienza...
La tabella mi è chiara. Non so se la questione sia banale, ma non riesco a comprendere il principio per cui si può iterare la sostituzione delle terne (quaterne) per ciascuna cifra di un numero ottale (esadecimale).
Se c'è qualcuno armato di pazienza...
Lo puoi fare perché 8 e 16 sono potenze di due. Tre o quattro cifre binarie sono quindi in corrispondenza biunivoca con una cifra ottale o esadecimale. Volendo fare la stessa cosa con la notazione decimale potresti pensare ad un sistema numerico che abbia come base 1000. Ogni gruppo di 3 cifre corrisponderebbe quindi ad una cifra di questo sistema numerico.
Volendo essere più formale si può dimostrare nel seguente modo. Sia \(n \in \mathbb N\) il numero che vogliamo rappresentare. Se scegliamo una base \(2 \leq b \in \mathbb N,\) possiamo scrivere \( n = \sum_i c_i\,b^i \) dove \( c_i \) è la \(i\)-esima cifra di \(n\) nella base \(b\). Se a questo punto scegliamo di rappresentare il numero nella base \( b^k \) per un qualche \(k > 1\) avremo che
\[ n = \sum_i d_i\,\bigl(b^k\bigr)^i = \sum_i \Biggl( \sum_{j = 0}^{k-1} c_{i\,k + j}\,b^j \Biggr)\bigl(b^k\bigr)^i \]
dove le \( d_i \) sono le cifre nella base \(b^k\).
\[ n = \sum_i d_i\,\bigl(b^k\bigr)^i = \sum_i \Biggl( \sum_{j = 0}^{k-1} c_{i\,k + j}\,b^j \Biggr)\bigl(b^k\bigr)^i \]
dove le \( d_i \) sono le cifre nella base \(b^k\).
@abc
I numeri binari di tre cifre sono otto e le cifre di un numero ottale sono otto quindi puoi costruire una corrispondenza biunivoca tra i due insiemi. Basta questo (e analogamente per l'esadecimale).
I numeri binari di tre cifre sono otto e le cifre di un numero ottale sono otto quindi puoi costruire una corrispondenza biunivoca tra i due insiemi. Basta questo (e analogamente per l'esadecimale).