Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

[Assembler] Questo programma può andare??

Linguaggi e sistemi

Moderatori: Foto UtentePaolino, Foto Utentefairyvilje

0
voti

[1] [Assembler] Questo programma può andare??

Messaggioda Foto UtenteWed_17 » 21 feb 2009, 18:02

Ciao a tutti,
sto cercando di svolgere il seguente tema d'esame (esercizio 4)
http://web.diegm.uniud.it/pierluca/publ ... 41209r.pdf
sempre alla stessa pagina ci sono le definzioni delle istruzioni.
La soluizione mi è chiara, ma questa versione potrebbe andare bene oppure è sbagliata??
Codice: Seleziona tutto
TEMP_ADD:   word EE00
START:      PUSH R1
            PUSH R2
            LDWA R11 TEMP_ADD
            LDWA R10 R1
            CALL STRCPY
            POP R2
            POP R1
            LDWA R10 R2
            LDWA R11 R1
            PUSH R1
            CALL STRCPY
            POP R1
            LDWA R10 TEMP_ADD
            LDWA R11 R1
            CALL STRCPY
            HLT


STRCPY:     LDWR R12 R10
            STBR R12 R11
            JMPZ END_STRCPY
            INC R10
            INC R11
            JUMP STRCPY
END_STRCPY: RET


Grazie a tutti
Ci sono 10 tipi di persone: quelle che conoscono il sistema binario e quelle che lo ignorano.
...We are Motörhead, and we play rock 'n' roll...
Avatar utente
Foto UtenteWed_17
255 3 9
Expert
Expert
 
Messaggi: 363
Iscritto il: 4 dic 2008, 20:19

0
voti

[2] Re: [Assembler] Questo programma può andare??

Messaggioda Foto Utentec1b8 » 21 feb 2009, 22:19

Ciao,
la tua versione è corretta, ma semplificabile.
Nella STRCPY utilizzi e modifichi i registri R10, R11, R12 le stringhe originarie sono puntate da R1 ed R2 che non vengono quindi sporcati. In questo modo puoi evitare tutti i PUSH e POP prima e dopo le chiamate alla STRCPY.
Nel codice originale tali PUSH e POP erano necessarie perché i registri R1 ed R2 venivano modificati nella STRCPY.
Fabio
Avatar utente
Foto Utentec1b8
3.595 3 8 13
G.Master EY
G.Master EY
 
Messaggi: 1770
Iscritto il: 15 gen 2009, 15:23

0
voti

[3] Re: [Assembler] Questo programma può andare??

Messaggioda Foto UtenteWed_17 » 22 feb 2009, 0:50

si si decisamente, l'ho scritto senza pensare, grazie :D
Ci sono 10 tipi di persone: quelle che conoscono il sistema binario e quelle che lo ignorano.
...We are Motörhead, and we play rock 'n' roll...
Avatar utente
Foto UtenteWed_17
255 3 9
Expert
Expert
 
Messaggi: 363
Iscritto il: 4 dic 2008, 20:19


Torna a PC e informatica

Chi c’è in linea

Visitano il forum: Nessuno e 11 ospiti