MSX BASIC – lezione 4

da | Nov 18, 2023 | MSX BASIC | 0 commenti

RUBRICA “MSX BASIC” a cura di Orazio Cacciola (parte 3)

I Sistemi; Binario, Ottale ed Esadecimale

Il Sistema Binario usa solo 2 numeri 0 e 1. Viene letto da destra verso sinistra ed è un sistema posizionale in base 2. Per fare un esempio, vogliamo scrivere il numero decimale 151. In Binario sarà: 10010111. Abbiamo detto che viene letto da destra verso sinistra, Perciò: 1+2+4+0+16+0+0+128. Visto che il calcolo verrà fatto con l’elevazione alla 2^, ad ogni posizione verrà sommato il codice in base 2 se questo è acceso cioè se è 1.

Se vogliamo conoscere la corrispondenza di un numero binario ed abbiamo il decimale, il nostro MSX usa la funzione BIN$(numero decimale). Ricordiamoci che tale numero trasformato sarà un valore alfanumerico. Se invece vogliamo trovare il numero binario da quello decimale, possiamo utilizzate la funzione VAL: A=VAL(“&B10010111”). Dove la & è il suffisso di conversione (non sapendo qual è la dicitura corretta, ho dato questa definizione) e B sta per codice binario. Purtroppo, almeno che non ne sia a conoscenza, non esiste un modo per calcolare 2 o più numeri binari.

Il Sistema ottale usa solo 8 numeri, da 0 a 7, dopodiché ripartirà da 10 fino a 17 e così via. il 10 in ottale corrisponde al 8 decimale. Possiamo dire che è un sistema posizionale in base 8. È un sistema che viene usato pochissimo (in tanti anni non ho mai visto nessuno usarlo), però questo non vuol dire che non sia valido. Da quello che ho letto, veniva usato per lo più nei software scientifici.

Se vogliamo convertire un numero decimale in ottale, useremo la funzione OCT$(Valore Decimale). Se viceversa, useremo sempre la funzione VAL: A=VAL(“&O Numero Ottale”). Dove, come detto sopra, la & è il suffisso di conversione e la lettera O specifica che sta convertendo un numero ottale. Anche per gli ottali vale quello che ho detto sopra per il calcolo dei binari.

Il sistema Esadecimale usa ben 16 numeri. Per supplire i numeri i mancanti che vanno dopo il numero 9, usa le prime 6 lettere dell’alfabeto. La numerazione è così definita: 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. Dopo quest’ultima si ripartirà dal numero 10 che equivale al numero 16 decimale. Anche qui, se vogliamo convertire un numero decimale in ESA, useremo la funzione HEX$(Numero decimale). Come per gli altri 2 sistemi, anche per gli ESA si usa la funzione VAL per sapere il suo valore in decimale. A=VAL(“&H Numero Esadecimale”), dove la H specifica che il numero che si sta convertendo è in ESA.

Per concludere, volevo solo dire che è stata una spiegazione molto rapida e vaga, non mi sono soffermato nei dettagli. Il mio scopo è solo far conoscere i comandi e le funzioni del MSX Basic. Ogni tanto mi soffermo su qualche argomento che è d’obbligo sapere qualcosa in più, ma su questi non era così importante. Vi rimando sui vari libri e manuali dove l’argomento è spiegato più dettagliatamente.

Un’altra cosa per finire. Per chi inizia a conoscere questo linguaggio, non è molto importante ai fini della programmazione conoscere questi sistemi di numerazione. Nei piccoli programmi che inizierete a fare, non saranno mai usati. Ma con l’esperienza e la voglia di inoltrarsi in programmi più complessi, sarà fondamentale la conoscenza di questi ultimi.
Grazie e alla prossima

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

LEZIONE 26 – INTERVAL ON, RND ED ALTRI

LEZIONE 26 – INTERVAL ON, RND ED ALTRI

Buongiorno a tutti, In questa puntata parlerò di un interrupt importante, specialmente per i giochi, quando vogliamo far apparire un nemico all'improvviso o un oggetto utile, ma anche per creare un cronometro o un orologio e tante altre cose. Il COMANDO sfrutta il...

it_ITIT_IT