www.bertinettobartolomeodavide.it

 

Se ritenete che il contenuto di questo sito ed il mio lavoro possano esservi stati utili in qualche modo e possano aver cambiato in piccola misura la vostra vita, potrete contribuire al mantenimento e alla diffusione dei materiali in esso contenuti con una donazione di importo completamente libero. Ovviamente non siete obbligati ma se qualcuno deciderà di aderire gliene sarò infinitamente grato!

SICURAMENTE LA DOMANDA CHE SORGE SPONTANEA E: "COME CAVOLO SI FA A STAMPARE PIU' CARATTERI INSIEME"?

Per stampare una stringa di caratteri proviamo prima il metodo più macchinoso. Ovvero lavoriamo sui codici macchina e sui codici ascii.

-e 200                                                                                    ----> premere 'invio'.
14A0:0200 00.48 00.65 00.6c 00.6c 00.6f 00.2c 00.20 00.44    ----> codici ascii dei caratteri: premere 'spazio' ogni codice
14A0:0208 00.4f 00.53 00.20 00.68 00.65 00.72 00.65 00.2e
14A0:0210 00.24                                                                    ---> carattere ascii terminatore '$'.

PS: il terminatore non verrà visualizzato, indica solo al computer la fine della frase.

Proviamo a visualizzare la stringa che abbiamo appena composto così come si presenta in memoria:

-d 200            -----> premiamo 'invio'.
14A0:0200 48 65 6C 6C 6F 2C 20 44-4F 53 20 68 65 72 65 2E Hello, DOS here.        ---> stringa appena scritta in ram.
14A0:0210 24 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 $...............
14A0:0220 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
14A0:0230 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
14A0:0240 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
14A0:0250 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
14A0:0260 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
14A0:0270 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................

Questo insieme di numeri e caratteri è una porzione di memoria del nostro computer dove abbiamo inserito la stringa di testo. Detto anche dump mirror.

E' il caso di digitare il codice che permette la visualizzazione della stringa perché il programma faccia qualcosa.

-a 100                            ---> premere 'invio'
14A0:0100 mov ah,09            ---> questa funzione stampa una stringa di caratteri su schermo
14A0:0102 mov dx,200        ----> carica in dx la stringa introdotta all'indirizzo 200h
14A0:0105 int 21                    ---> esegue il tutto con l'ausilio dell' interrupt 21 del dos.
14A0:0107 int 20                    ----> termina il programma e restituisce il controllo al sistema operativo.
14A0:0109
-

Per eseguire il programma digitiamo:

-g 109                            ---> comando di esecuzione e premiamo 'enter'
Hello, DOS here.            ----> risultato: stringa stampata!
L'esecuzione del programma è terminata normalmente        ----> fine esecuzione.

        PS:  ricordarsi di settare l'indirizzo IP a 100h con 'r ip' !!!

Questo programma per essere salvato deve essere inserita la dimensione in cx partendo da 100h fino a 212h perché devono essere compresi anche i byte di memoria dove abbiamo inserito la stringa!

Per venire a conoscenza dei byte basta eseguire il comando 'h 212 100' e il risultato sarà 112 da inserire in cx.

 

1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - 13 - 14 - 15 - 16

Se ti interessa scaricare questo tutorial in formato PDF premi questa scritta!!!

(disponibile anche su www.manuali.it)

(presente anche su www.tutorialpc.it)

Dott. Bartolomeo Davide Bertinetto

www.bertinettobartolomeodavide.it