Sezione |
Indirizzi Base
Registri Interni
|
Palestra Livello Apprendisti Livello Esperti |
Programmare in Assembly |
Esercizio n° A013 4/4 [70 di 157] |
|
|
||
Acquisizione Caratteri - Aspetta pressione di soli tasti NUMERICI con eco - Messaggio d'errore | ||
Conclusioni |
|
|
|
|
||
Cosa hai imparato | |||
|
|
La messa a video di informazioni incrociate può generare inaspettati, fastidiosi, problemi di incompatibilità tra le posizioni di stampa. |
|
La tecnica vincente in questi casi consiste nell'affidare le singole, diverse, posizioni di stampa a registri o a locazioni di memoria (variabili locali, da definire nella zona dati con la ormai nota direttiva DB), per poi farle gestire dalla ben nota Macro M_CURSOR. |
|
In questo modo è anche possibile e facile renderle dinamiche: la medesima M_CURSOR DH,DL, posta dentro il Main Loop, provvede in background a cambiare posizione semplicemente cambiandole le carte in tavola (cioè cambiando altrove i valori di DH e DL) |
|
Un modo pratico per annullare la visualizzazione di un messaggio, quando non serve più, è quello di stampargli sopra una diversa stringa di uguale dimensione; il messaggio può essere cancellato (invece che sostituito) se la stringa che si usa per la sovrascrittura è vuota. |
|
Un errore che spesso si vede fare è quello, in casi come questo, di chiamare un clearscreen: è certamente una cosa da escludere categoricamente, basta coprire le cose da cancellare con stringhe vuote della stessa posizione e della stessa lunghezza. |
|
|
|
|
||
Cosa ti aspetta | |||
|
|
Il gioco continua... E se fosse necessario acquisire soli tasti letterali? Una situazione tutt'altro che improbabile.. | |
Ma anche la discriminazione dei tasti con lettere ha i suoi problemi nascosti.. |
|
Nel prossimo esercizio sarà un piacere svelarteli.. |
|
Palestra Apprendisti | Esercizio n° A013 4/4 | |||||||
70 di 157 |
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|