You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Jurassic News - Anno 1 - numero 6 - novembre/dicembre <strong>2006</strong><br />
Retro Code<br />
I fondamenti della<br />
programmazione<br />
Basic attraverso<br />
l’esame di uno<br />
dei primi interpreti<br />
in assoluto<br />
disponibili sui<br />
sistemi home.<br />
Tabella Colori<br />
0 = Black<br />
1 = Magenta<br />
2 = Dark Blue<br />
3 = Light Purple<br />
4 = dark Green<br />
5 = Grey<br />
6 = Medium Blue<br />
7 = Light Blue<br />
8 = Brown<br />
9 = Orange<br />
10 = Gray<br />
11 = Pink<br />
12 = Green<br />
13 = Yellow<br />
14 = Blue/Green<br />
15 = White<br />
2<br />
AppleSoft Integer Basic (parte )<br />
Riprendiamo l’esame del lin-<br />
guaggio Integer Basic di Apple<br />
con l’esame delle funzioni built-in<br />
e degli statement specifici del si-<br />
stema.<br />
Le funzioni<br />
Come ogni linguaggio che si ri-<br />
spetti anche l’Integer Basic Ap-<br />
plesoft dispone di alcune funzioni<br />
utili per ottenere dei valori durante<br />
l’elaborazione. Dato che si tratta<br />
di un interprete che gestisce solo<br />
l’aritmetica intera le funzioni sono<br />
limitate a questo range di valori.<br />
Ad esempio mancano le funzioni<br />
trigonometriche (seno, coseno,<br />
tangente, etc...). In effetti sono<br />
solamente sette e precisamente:<br />
ABS(expN) - restituisce il valore<br />
assoluto di un numero (cioè se<br />
era negativo diven-<br />
ta positivo);<br />
LEN(exp$) - resti-<br />
tuisce la lunghezza<br />
di una stringa;<br />
PEEK(expN) - re-<br />
stituisce il contenu-<br />
to decmale di una<br />
cella di memoria;<br />
RND(expN) - re-<br />
stituisce un numero<br />
casuale compreso<br />
fra 0 e exprN - 1;<br />
S C R N ( e x p N 1 ,<br />
expN2) - serve per<br />
testare il colore del pixel indivi-<br />
duato dalle due coordinate (oriz-<br />
zontale e verticale) definite dai<br />
due parametri; il colore viene in-<br />
dividuato da un numero compre-<br />
so fra 0 e 15;<br />
SGN(expN) - testa il segno di<br />
una espressione numerica; re-<br />
stituisce -1 se l0espressione è<br />
negativa, 0 se vale zero e +1 se<br />
l’espressione è positiva;<br />
PDL(expN) - restituisce un valore<br />
compreso fra 0 e 255 corrispon-<br />
dente alla posizione del potenzio-<br />
mentro del paddle individuato dal<br />
parametro (compreso fra 0 e 3).<br />
Questo è quanto per le funzioni,<br />
davvero in numero minimale. Se<br />
poi si aggiunge che non è possi-<br />
bile definire delle funzioni utente<br />
nel programma, il quadro si pre-<br />
senta molto limitativo.<br />
Si tenga presente comunque<br />
che si tratta di un linguaggio nato<br />
nel 1977/78, in un’epoca dove già<br />
essere in grado di programmare<br />
un calcolatore appariva qualcosa<br />
di magico.<br />
Gli statement.<br />
A parte alcuni costrutti classi-<br />
ci come LET, IF, GOTO, FOR,<br />
NEXT, etc... il linguaggio dispone<br />
di istruzioni specifiche per il siste-