8086 programma

S

sachingupta

Guest
Salve
Sto cercando il programma per un lungo tempo, ma non sono in grado di trovare una soluzione.Gentilmente mi suggerisce qualche soluzione.

128 byte sono memorizzati nella memoria in modo contiguo.Scrivere un programma per invertire l'ordine in cui sono immagazzinati nella memoria.

Saluti
Sachin

 
Ciao,

Il programma di installazione utilizzando due puntatori a 8 bit registri.
Inizializzazione per primo l'ultimo indirizzo della tua lista
Inizializzare il secondo puntatore al seguente indirizzo l'ultimo della tua lista originale
Copia il contenuto del primo indirizzo indicato dal puntatore a l'indirizzo indicato dal secondo
Decrement primo puntatore e decremento secondo puntatore.
Loop copia / incremento / decremento passi 127 volte.

Se ho capito che cosa scrivere, e avete bisogno di dati originali nel settore, si deve essere in grado di modificare il dato algoritmo per farlo.

Domestica a compensare ciò che non hai da fare: Ripetere l'esercizio utilizzando un solo indirizzo di memoria, e non a 128 byte, come nella soluzione data.

Saluti!

 
Grazie per l'algoritmo.
Ma la fonte e la destinazione di memoria è la stessa.Inoltre, la restrizione è che non siamo in grado di utilizzare il salto istruzioni.In questo caso, l'algoritmo non funziona come dopo ogni copia i puntatori sono decrementato.
Saluti

 
La sua facile.Segui questi passi
1.Initialze due puntatori, uno che punta
all'inizio del blocco di memoria, altro punto alla fine.
2.Copiare i dati sottolineato da entrambe le puntatori a dire due registri A e B.
3.Swap A & B
4.Negozio A & B indietro
5.Incremento puntatore che punta
all'inizio del blocco di memoria e altre decremento di puntamento fino alla fine della memoria
6.Ripetere da 2 a 5 fino ad arrivare a metà (64 iterazioni di 128 byte)

Usa LOOPE / LOOPNE istruzioni poiché non vi è permesso di utilizzare il salto.

 
Thanks a lot.
Ma posso farlo utilizzando REP?
Posso avere più istruzioni ripetute utilizzando unico REP?

 

Welcome to EDABoard.com

Sponsor

Back
Top