Sezione |
Indirizzi Base
Registri Interni
|
Palestra Livello Apprendisti Livello Esperti |
Programmare in Assembly |
Esercizio n° A001 4/9 [8 di 157] |
|
|
||
Gestione Caratteri - Stampa di un solo carattere | ||
Analisi del Codice [3 di 3] - Main Program |
|
Chiameremo Main Program (programma principale) il tratto di codice assembly che raccoglie le istruzioni in grado di organizzare il lavoro richiesto dalle specifiche del problema da risolvere, cioè quello compreso tra EsA001 proc NEAR e EsA001 ENDP. |
|
Analizziamo dunque la parte originale di questo primo esercizio: |
|
|
Esercizio |
NB: se il testo nell'Area
ti
sembra strano installa il font Giobe.TTF: clicca qui!! |
|
Le prime 3
istruzioni del
Main Program servono per
imporre la completa pulizia (ClearScreen) dello schermo; non è pensabile un programma che
non cominci con queste 3 istruzioni (o con altre
in grado di fare la stessa cosa). In sostanza inizializzano ed eseguono una chiamata di sistema:
|
|
Le 3 istruzioni centrali descrivono una seconda chiamata di sistema: in questo caso viene attivata la Funzione 0EH di INT 10H che scrive un carattere nella posizione di stampa e nella pagina video corrente e aggiorna la posizione del cursore; per portare a termine il suo compito bisogna dichiarare (con MOV AH,0EH ) il numero 0EH della Funzione desiderata e specificare (con MOV AL,'A') il carattere che si desidera mettere a video, operazione assicurata dalla successiva chiamata INT 10H . |
|
Avrai certamente notato che entrambe le chiamate di sistema si sono appoggiate a INT 10H: si tratta della raccolta di procedure che si occupano del Sottosistema Video. |
|
Il compito che ci siamo prefissi è assolto! Ma è bene imparare fin d'ora che un eseguibile non può finire così. |
|
Le successive 2 istruzioni (MOV AH,00H e INT 16H) sono caldamente consigliate, per assicurare la possibilità di godere del nostro lavoro; per disporre di questa opportunità ogni eseguibile che si rispetta si fermerà in attesa della pressione di un tasto qualunque. Di questo si occupa la Funzione 00H di INT 16H (per ora non ancora documentata..). |
|
Le ultime 2 istruzioni (MOV AH,4CH e INT 21H) sono indispensabili per assicurare la chiusura del programma in esecuzione, compito affidato al sistema operativo MsDOS che ne gestisce l'allocazione in memoria e l'esecuzione; di questo si occupa la Funzione 4CH di INT 21H (per ora non ancora documentata..) |
|
Non ti rimane che tentare la compilazione... |
|
Palestra Apprendisti | Esercizio n° A001 4/9 | |||||||
8 di 157 |
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|