| 
      Sezione | 
      
       
   
    
      Indirizzi Base
    
    
    
      Registri Interni
    
      | 
    
| Palestra Livello Apprendisti Livello Esperti | 
| Programmare in Assembly | 
      INTRODUZIONE [1 di 23]  | 
 
| 
         
  | 
      
  | 
 ||
| Gestione Caratteri - Stampa in posizione dinamica di una cornice di dimensioni fisse | ||
| Analisi del Codice Sorgente [3 di 3] - Variante con Procedura interna | 
| 
         
  | 
      
| Data la particolarità del progetto desidero sottoporti un'appendice: supponiamo di dover stampare 2 cornici come quella appena progettata, una vicina all'altra, magari per predisporre le tabelle di controllo del gioco "Battaglia Navale". | 
| 
         
  | 
      
Le alternative sono:
  | 
| 
         
  | 
      
| E' un'eccellente occasione per farsi la mentalità; ti ricordo 2 regole fondamentali della programmazione (non solo) assembly, che ho già avuto modo di sottoporti... | 
| 
         
  | 
      
| 
    
     | 
    Se, leggendo un codice sorgente, si notano tratti di programma simili tra loro (a meno di piccoli dettagli) c'è qualcosa che non va!!: il programma va ottimizzato. Di solito conviene estrarre i pezzi di codice in comune e farne una procedura interna (o, se l'estratto si ritiene particolarmente utile, anche una da includere in Libreria, da dichiarare EXTRN) | 
| Un buon programma principale (Main Program) deve essere smilzo, essenziale, immediato: dovrebbe limitarsi a chiamare una o 2 sole procedure e a garantire il servizio di eventuali tasti premuti (prendere decisioni); conviene dunque estrarre comunque i pezzi di codice specializzati e farne procedure interne: la leggibilità del Main Program ne guadagnerà sicuramente! | 
| 
         
  | 
      
| Ecco come diventa il programma precedente, applicando le preziose regole del Maestro: | 
| 
         
  | 
      
| 
       
        | 
      
           | 
      
          Esercizio | 
      
    NB: se il testo 
      nell'Area
       ti 
      sembra strano installa il font Giobe.TTF: clicca qui!!  | 
      
        
         | 
      
        
         | 
      
        
         | 
    
| 
         
  | 
      
Ti faccio notare alcune cose importanti:
  | 
| 
         
  | 
      
Estrarre parte del codice 
  assembly dal programma principale per 
  trasformarla in procedura è un'eccellente 
  abitudine: 
  
  | 
| 
         
  | 
      
| Le icone in alto a destra sono a tua disposizione per vedere l'eseguibile EsE004_1.COM (ovviamente uguale al precedente...) e per scaricare questo sorgente EsE004_1.ASM, variante del precedente. | 
  | 
| 
      
       |  
    Palestra Esperti | 
      
       | 
    INTRODUZIONE | 
    
    ![]()  | 
    
    ![]()  | 
    
    ![]()  | 
 ||
| 1 di 23 | 
      
  | 
    
| 
     
  | 
  
        
  | 
    
        
  | 
    
| 
      
         
        Home 
     | 
      
  | 
    |||||||
      
  | 
       
          
        Motore Ricerca  | 
      
  |