Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Palestra Livello Apprendisti Livello Esperti

Home » Programma il Computer » Tutorial Assembly

Palestra Assembly - Home Page

  Programmare in Assembly

INTRODUZIONE [1 di 23] 

               

Analisi del Codice · Conclusioni

Gestione Caratteri - Stampa in posizione dinamica di una cornice con taratura
Conclusioni

               

 

 

    

Domande Frequenti
 

    

 

bullet

Ho provato a stampare la cornice tarata nell'angolo in alto a sinistra dello schermo, passando le coordinate 0,0 (MOV DL,0, MOV DH,0); sorpresa: la struttura è sballata!! non è per niente come la pensavo... Poichè il computer ha sempre ragione devo aver fatto errore; osservando bene il codice della procedura che consente la stampa dinamica della cornice tarata (Poligono) mi accorgo che la colonna di stampa non può essere inferiore a 2. Puoi ripetere queste prove con le coordinate DL=1,DH=0 (ancora fuori range, ) e DL=2,DH=0 (ora perfette), o con altri valori, per vedere che effetto fa.

 

 

    

Cosa hai imparato
 

    

 

bulletNella logica di ottimizzare i programmi sorgente assembly (e non solo assembly..) conviene sempre progettare pezzi di codice piccoli e fini a se stessi; a questa regola risponde la logica di questo progetto che definisce una procedura interna (Poligono) che chiama un'altra procedura interna (Cornice).

 

bulletL'esecuzione di una procedura interna può modificare irreversibilmente il contenuto dei registri che utilizza:

 

bulletse in ingresso (cioè prima di chiamare la procedura) contengono valori importanti, imperdibili, è necessario e consigliato salvare/recuperare il loro valore nello/dallo stack, un'area di memoria ram di solito dedicata al processore
bulletquesta tecnica si realizza con l'aiuto delle istruzioni PUSH reg16bit e POP reg16bit, ma non dimenticare che nello stack finiscono sempre word (16 bit o multipli di 16), per cui se desideri salvare il valore (per esempio) di DL devi comunque salvare (e recuperare) DX, cioè il registro a 16 bit che lo contiene. 

 

bulletSe una procedura interna utilizza stringhe e/o variabili ad essa dedicate conviene definirle subito sopra la sequenza delle sue istruzioni, evitando di aggiungerle alle altre, di norma posizionate nella cosiddetta Area dei dati del programma; in questo modo:

 

bulletse fosse necessario trasformare la procedura interna in procedura da aggiungere alla libreria Giobe.LIB dovranno essere incluse nel medesimo modulo, cioè nel pezzo di codice assembly necessario per definirla
bulletcon questa tecnica sono certamente appartenenti alla procedura che le utilizza e saranno sempre e comunque da essa reperite, proprio per la presenza del segment override CS:, da me appositamente imposto nell'uso delle variabili.

 

 

    

Cosa ti aspetta
 

    

 

bulletLa disponibilità di cornici tarate ci suggerisce il loro utilizzo per le tabelle di puntamento necessarie al gioco della Battaglia Navale...
bulletIl prossimo esercizio si occuperà di progettare un desktop adatto allo scopo.

 

 

Se desideri chiedere chiarimenti mandami [clicca qui] una @-mail (questo link è dedicato esclusivamente ai chiarimenti... per altri tipi di comunicazione clicca qui).

    

Pagina Precedente Palestra Esperti Pagina Successiva INTRODUZIONE   Torna alla Home  della Palestra Assembly Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
1 di 23
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

    

PALESTRA » Esperti » Es.001 Es.002 Es.003 Es.004 Es.005 Es.006 Es.007 Es.008 Es.009 Es.010 Es.011

| Che serve per iniziare | Prima compilazione | Livello Apprendisti |

TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati