This is an old revision of the document!
Sulla conversione della rappresentazione di numeri naturali da binario naturale a decimale in codifica BCD
Premessa
Molto spesso, quando si affrontano per la prima volta apetti relativi alla rappresentazione dei numeri si fa fatica a distinguere il numero in quanto entità che esiste e mantiene le sue proprietà (cioè il suo “valore”) independentemente dalla sua rappresentazione e la sua rappresentazione. Il punto è che per esprimere il valore di un numero non possiamo fare a meno di usare una rappresentazione. Se restringiamo l'attenzione ai numeri naturali, chiunque abbia una formazione tecnico-scientifica elementare conosce almeno tre rappresentazioni dello stesso numero: la rappresentazione decimale, la rappresentazione mediante “numeri romani”, la rappresentazione in binario naturale. Le seguenti rappresentazioni si riferiscono tutte allo stesso numero:
- decimale (usando 3 cifre): 079
- binario (usando 8 cifre): 01001111
- numemri romani: LXXIX
Allo domanda “di che numero si tratta?” siamo tutti portati a dire che si tratta del numero “settantanove” in ogni caso. A pesarci bene, però, questa non è la risposta alla domanda. Semmai, dire che il numero che in rappresentazione con numeri romani “LXXIX” è il numero “settantanove” esprime il fatto che il numero “rappresentato” da “LXXIX” è lo stesso “rappresentato” da “079” nei due rispettivi contesti.
Siamo così abituati alla rappresentazione in notazione decimale dei numeri interi che, inevitabilmente, siamo portati a confondere il numero con la sua rappresentazione decimale.
In queste note, che vogliono essere una presentazione non rigirosamente formale di un particolare metodo di conversione dalla rappresentazione in binario naturale alla rappresentazione in BCD di interi naturali, non ci resta che sfruttare l'indentificazione fra numeri e loro rappresentazione decimale per semplificare, per quanto possibile, la discussione. Useremo comunque le seguenti convensioni:
- Il numero viene identificato dalla sua notazione decimale (per esempio parleremo “del numero 79”)
- Quando vorremo fare esplicito riferimento alla rappresentazione, useremo una stringa ordinata di simboli fra parentesi graffa, seguita dall'indicazione della base espressa in decimale. Per esempio diremo che la rappresentazione in decimale su 4 cifre del numero 79 è {“0079”}10; la rapresentazione in binario di 79 su otto cifre è {“01001111”}2, la rappresentazione in ottale (base 8) di 79 su 4 cifre è {“0117”}8, la rappresentazione di 79 in esadecimale su 3 cifre è {“04F”}26 e così via.
- Se si usa la virgola per rappresentare numeri decimali adottiamo le seguenti ovvie convenzioni:
- * {“0023,412”}10 rappresenta il numero 23412/10^3; {“010011,11”}2 rappreseta il numero 79/(2^2) e così via.
Si noti inoltre che, nella ipotesi di ragionare in un contesto in cui gli algoritmi che illustreremo dovranno essere rigorNon ci resta quindi che prendere atto di questo fatto e contesti di tutti coloro i quai hanno avuto una esperienza anche solo superficiale con
