| Autore |
Discussione  |
|
|
jwein
Utente giovane

|
Inserito il - 10/01/2009 : 16:34:15
|
Ciao a tutti! 
Dato che ho l'esame di laboratorio mercoledi vi vorrei esporre un dubbio che mi è venuto circa l'implementazione delle procedure in assembly. :)
Pensate che sia meglio ( e meglio visto dai prof. ) sviluppare procedure che agiscono direttamente ed esplicitamente sui dati del programma o procedure che svolgono le operazioni su registri generici ( ovviamente richiedendo implicitamente il fatto che prima che la procedura venga chiamata il programmatore copi i dati nei registri utilizzati ) ?
Il secondo caso è forse più corretto dal punto di vista formale, ma è più difficoltoso e meno intuitivo per il programmatore...
Inoltre pensate che sia meglio utilizzare i vettori nella forma 'vettore[registro]' o caricare in un registro l'indirizzo base del vettore e riferirsi agli elementi come '[registro+offset]' ?
Infine, meglio usare loop nelle operazioni con i vettori o cicli costruiti con apposite 'cmp' ? Io mi trovo bene con i loop, ma ciò richiede l'uso di due registri... Il CX, automaticamente decrementato, e un registro indice da incrementare di volta in volta.
Spero di essere stato chiaro nel formulare le domande... La questione che ho più a cuore è probabilmente la prima, anche se penso vada un po' a gusti...
Grazie in anticipo :) Ciao!
|
|
|
maria lucia
Utente giovane

Regione: Puglia
Prov.: Bari
Città: Canosa di Puglia
|
Inserito il - 10/01/2009 : 16:44:42
|
--------------------------------------------------- Pensate che sia meglio ( e meglio visto dai prof. ) sviluppare procedure che agiscono direttamente ed esplicitamente sui dati del programma o procedure che svolgono le operazioni su registri generici ( ovviamente richiedendo implicitamente il fatto che prima che la procedura venga chiamata il programmatore copi i dati nei registri utilizzati ) ? ---------------------------------------------------
risp: procedure che svolgono le operazioni su registri generici
--------------------------------------------------- Inoltre pensate che sia meglio utilizzare i vettori nella forma 'vettore[registro]' o caricare in un registro l'indirizzo base del vettore e riferirsi agli elementi come '[registro+offset]' ? ---------------------------------------------------
risp: è indifferente
--------------------------------------------------- Infine, meglio usare loop nelle operazioni con i vettori o cicli costruiti con apposite 'cmp' ? Io mi trovo bene con i loop, ma ciò richiede l'uso di due registri... Il CX, automaticamente decrementato, e un registro indice da incrementare di volta in volta. ---------------------------------------------------
risp: se usi i vettori sarebbe preferibile usare loop, però non è impossibile usare i cicli se nella traccia non è richiesto espilicitamente di usare loop...l'importante è che il programma funzioni correttamente
|
Modificato da - maria lucia in data 10/01/2009 16:45:43 |
 |
|
|
jwein
Utente giovane

|
Inserito il - 10/01/2009 : 17:27:35
|
Ciao! Grazie per la risposta. Era un po' come immaginavo.. Dimenticavo, penso sia buona abitudine eseguire un push dei registri all'interno della procedura all'inizio e ripristinarli con un pop alla fine di essa in modo che il codice non influenzi il resto del programma, no ? Infine... sai/sapete se è possibile vedere la lista degli interrupt di ralph brown e se è possibile usare le procedure definite in emu8086.inc ( PRINT_NUM, SCAN_NUM, ... ) durante l'esonero ( corso A ) ? |
Modificato da - jwein in data 10/01/2009 17:34:46 |
 |
|
|
Mk178
Moderatore ITPS
  

Regione: Puglia
Prov.: Bari
|
Inserito il - 10/01/2009 : 17:46:53
|
se ciò ke t chiede la traccia è ciò ke svolge già la procedura, nn credo ke puoi usarla...(devi "far vedere" come si fanno certe cose, nn puoi farle fare a procedure già implementate) per tutto il resto, complimenti per le "preoccupazioni", ti avviso ke tutti gli accorgimenti ke stai prendendo alla fine nn sono molto rilevanti al superamento dell esame(l'importante è ke il codice esegua ciò ke la traccia richieda), xò è importante ke t poni certi quesiti... ;)
...in bocca al lupo per l'esame! |
PER ESSERE SEMPRE AGGIORNATI Sottoscriviti alla discussione ITPS/Generale/INFORMAZIONI (NON postate in questo topic le vostre richieste) Oppure Iscriviti al gruppo su Facebook Informatica T.P.S. Bari
EX-Rappresentante LINK - udu: C. Facoltà di Scienze MM.FF.NN. & C. Corso di Laurea di Informatica TPS
|
 |
|
|
jwein
Utente giovane

|
Inserito il - 10/01/2009 : 17:55:58
|
| Ok grazie, e crepi il lupo :) |
 |
|
| |
Discussione  |
|
|
|