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] 

    

bulletPermettimi anche di ricordarti alcuni consigli:

      

bulletè opportuno che i concetti imparati di volta in volta non vengano dimenticati: ti consiglio un quaderno degli esercizi, sul quale riporterai le informazioni che più ti hanno colpito: è il modo migliore per memorizzare le cose per sempre...
bulletin particolare la pagina "Conclusioni", presente in ogni esercizio, è una vera e propria raccolta di Trucchi del mestiere: se impari e ti ricordi queste pagine diventerai presto autonomo e sicuro.
bulletgli argomenti teorici coinvolti negli esercizi sono tutti documentati; ad essi rimandano i link interattivi, presenti in gran quantità nelle pagine del mio sito. Almeno all'inizio non è necessario cliccarci sopra: ci sono e nessuno li toglierà..; ci puoi tornare dopo aver fatto un po' di pratica
bulletquando scrivi il sorgente, in ambiente Editor, impara fin d'ora ad usare il tasto TAB: ogni riga di programma ha sempre 4 campi che conviene separare appunto con tabulati:

      

Campo
Etichetta

Campo
Mnemonico

Campo
Operando

Campo commento
(fortemente consigliato!!)

Inizio:  MOV  AH,00H ;carica il registro AH con il
;numero esadecimale 00H
   MOV  AL,03H ;carica il registro AL con il
;numero esadecimale 03H
   INT  10H ;chiama la procedura di sistema

      

bulletimpara anche a commentare ogni riga di programma, così come ho fatto io per te: quando riprenderai in mano il sorgente, dopo qualche tempo, sarai grato a te stesso...
bulleti commenti si aggiungono dopo un ; (punto e virgola) sul quarto tabulato; commentare un sorgente è un'arte: nell'esempio precedente il commento è becero (la pedissequa traduzione dell'istruzione è inutile...); e più intelligente e utile interpretarla, per esempio così:

      

Campo
Etichetta

Campo
Mnemonico

Campo
Operando

Campo commento
(fortemente consigliato!!)

Inizio:  MOV
 MOV
 INT
 AH,00H
 AL,03H
 10H
;Provvede alla cancellazione del
;video, posizionando il  cursore
;alla riga0,colonna0,in alto a
;sinistra (a livello BIOS)

      

bulletInfine, ricorda che tutti i sorgenti hanno una struttura, necessaria per consentire al compilatore di tradurre in numeri binari (codice macchina) le parole che hai scritto nel sorgente (codice assembly); questa struttura è sempre la stessa e va copiata di programma in programma.

  

Suggerimento Nella descrizione di ogni cosa ci sono argomenti di contorno, di solito noiosi e appena tollerati, ma indispensabili per dare struttura al lavoro: di solito si affrontano con un po' di insofferenza, una volta per tutte: in Palestra Esperti queste informazioni sono date per acquisite.

  

bullet Se ti rimanesse qualche dubbio sono comunque descritte Una Tantum nel primo esercizio Apprendisti; ecco gli argomenti che può rispolverare:

  

 
  Struttura comune a tutti i programmi Sorgente assembly
Parte iniziale (PAGE, TITLE, SUBTTL, presentazione), inizio segmento di codice _prog SEGMENT, ASSUME, ORG 0100H, inizio codice (INIZIO: JMP EsE001),  AREA DATI del programma, main program (proc NEAR - ENDP), chiusura segmento di codice (_prog ENDS), fine codice (END INIZIO)
  Dettaglio sulle Dichiarazioni iniziali, comuni ad ogni Sorgente
Per far trovare le Macro della libreria Giobe.MAC (if1... include GIOBE.MAC ... endif), per far trovare le procedure esterne da assumere dalla libreria Giobe.LIB (EXTRN...:NEAR), per condividere la variabile locale con le procedure esterne (PUBLIC ATTRIB), per definire la variabile locale condivisa (ATTRIB DB 1FH)
  Dettaglio sulla Parte iniziale, comune ad ogni Sorgente
Dopo le direttive
SEGMENT, ASSUME e ORG, la prima istruzione in assoluto (INIZIO: JMP EsE001) serve per puntare il Main program, saltando le eventuali AREA DATI e ZONA procedure interne del programma
  Fase di Creazione dell'eseguibile COM
Scaricare il sorgente, aprire la shell DOS, controllare se il file è presente, iniziare la sessione di lavoro: (MACRO esa001 /e), leggere il messaggio iniziale, premere un tasto qualunque per entrare nell'editor, aggiornare il testo,
"2" per produrre l'eseguibile, "3" per vedere l'eseguibile, "1" per rieditare il sorgente, un tasto qualunque per tornare al prompt del DOS

  

bullet Ti ricordo che per organizzare e realizzare un progetto in Assembly è indispensabile:

  

 
  conoscere gli argomenti del primo capitolo del Tutorial (il processore e le sue istruzioni; il Debug e le Librerie di Sistema)
  disporre e conoscere compilatore, linker e editor, argomenti trattati nel secondo capitolo del Tutorial
  aver scaricato e letto i preziosissimi Manuali stampabili

    

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