Page 120

50ft mEmOR

iAformaticG srl v .T09liotti 4 56030 Pericjnono Pi DISTRIBUISCE

ALL 'IlIGROSS O

IN TUTT A IT ALI A

A p p I e oomput~ •..originoli oon sconti riservati per categoriE' fino 0135 ~ dt'1tis'1oo ori9inak> Comp-atibili 100 ~ modt' in itoly. Soonti fino 60~ del 50lito listino olcuni esempi: unita' cen1rolt' 64k 640.000 disk-drive slim 330.000 monitor 12" f.v.

159.000

doppio controRt'r card 66 .000 super seriol cord+cavo 138.000 poro/lei cord standord 00 .000 scht'da 80 col. + 04 k 175.000 . . . (' tutte It' oItrt' pt>rifericM.

5 IF PEEK 17681 - 134 THEN 20 lO PRINT CHR$ (41;"BLOAD SUPERVAL..OBJO" 20 POKE Il,0: POKE 12,3 :30 HOME: PRINT "DIMOSTRATIVO DI UNA ROUTINE IN L.M. CHE PER METTEIL CALOLO DI UNA ESPRES SIONE NU-MERICA CONTENUTA IN UNA STRINGA" 40 PF:INT" INSERISCI L' ESPRESSION E NUMERICA CHE VUOI RISOL VERE USANDO ANCHE FUNZIONI COMPLESSE (SQR,-,LOG,ETC .. 1"

45 50

PR INT : INPUT " )"; A$ IF A$ - "" THE~1 100

U!3R (01A$ 60 A 65 PRINT : INVER!3E : PRINT 70 - ";A: NORMAL TEXT : END

100

: GOTO

A$;"

45

)SQRI(SINI2)-2)+(COS(21"2»

)INTIRNDl1)*100+501 INT(RNDl11*100+50)

: SOFTURRE .9.o.r.o.n.t.i .t.o~ :C?n.t~b~i~a"~e~p1~fi.c~t~~~O:qo~ :'?O.n~a~il.it~·. g~~,:"~e.

- 60

)ABS(TAN(EXP(2*3.14)+LOG(SINI(SQRI9)-2)··31)/PDLl11)1 ABSITANIEXPI2*3.141+LOG(SIN(ISORI91-2)3»/PDLl1») )1

290.000 1

+

- .290549713

+ A

A

1.29054971

~9~.~~~~~.~~.~~~~~.. 230.000

~f~.t.t~r:~.~ .~~~~r.~~~ .2~q.9QO :~.$~i~;)~ ~f~e.tt.i ..... ?D.OOO: aggionlOffienti assicuroti :~ altri 150 poccht-tb in son~('ntt': d.oçu!i'~r!tqti E: ~aç~l~~a.u~qr~ sconti ultt>riot-i p'~r chi op'!ro nel st'1tore e p-er ordinoz. in grup'p-0 listino completo t' dt'ttogliato puo' tossert' richiesto inviando 3.000 Iirt' in francobolli oppure ordioondo olmeno un articolo in contrassegno Pt'r de1tagli tt'cnici urgt'nti : TELEFONAREallo 0587 - 616084 MATERIALI FORNITI CON GARANZIA SOOOISFATTI O RIMBORSATI

I prezzi non comprendono l' i.v .a. Apple e' un marchio rtogistrato da apple computtor inc. 120

Usrato 3 - Programma dimostrativo del/"lIso della VA L-POTENZIATA all'il!terno di IIl! programma darsi di scrivere in lesta al programma le POKE necessarie ad attivare lafun:ione USR(O).

Val-Potenziata

I

di Marco Mer/er - Gardolo (TN)

La routine di VAL-POTENZIATA permette di immettere una funzione qualsiasi (purché valutabile dall' Applesoft) direttamente con una INPUT F$ e restituisce il valore calcolato estattamente come se si fosse scritta una riga tipo F = < funzio-

ne>. La routine usa il comando USR (O) per passare la stringa alla VAL-POTENZIAT A e per averne indietro il valore. La sintassi è: 100 Y = USR(O)A$

naturalmente si possono usare per Y e A$ qualsiasi altra variabile. In testa al programma occorre definire i puntatori alla USR che corrispondono alle locazioni Il e 12; nel caso nostro occorre eseguire una POKE 11,0 e una POKE 12,3. Se si sposta la routine in un'altra zona di memoria bisogna mettere in Il e 12 il relativo valore (POKEI2,INDj6:POKEII, lND-PEEK(12)*256).

Basic. Ricor-

Funzionamento della routine in L.M. Una volta salvati i registri X ed Y e il puntatore al programma, la routine cerca in memoria la posizione della stringa che segue il comando USR(O). Una volta trovata, la stringa viene copiata in un Buffer (per comodità quello di tastiera) e vengono sostituiti i comandi Basic con i relativi Token. A questo punto la "stringa" è pronta per essere valutata dalla routine $DD67, si rimettono a posto i puntatori del Basic e i registri della CPU e si rientra nell'Applesoft. Commento Dal momento che la routine effettua il computo del contenuto di una stringa si può usare, oltre che per gli input di funzioni, anche per calcolare il valore di espressioni direttamente create dal computer con le operazioni di estrazione e concatenamento di stringhe. In pratica si può calcolare il prodotto di due funzioni, una contenuta in A$ e l'altra in B$, semplicemente calcolando il valore di F$ = "(" + A$ + ") * (" + B$ + ")". Pensate poi cosa si può fare usando anche le varie MID$, LEFT$ e RIGHT$ ...

••

MCmicrocomputer

n. 39 - marzo 1985

Profile for ADPware

039 MCmicrocomputer  

Marzo 1985

039 MCmicrocomputer  

Marzo 1985

Profile for adpware
Advertisement