Aiuto programma 8086 semplice

di il
2 risposte

Aiuto programma 8086 semplice

Devo scrivere un programma assembly per 8086 che incrementi il contenuto delle celle di indirizzo pari e decrementi quelle di indirizzo dispari per le prime 255 celle a partire dall indirizzo 0100h.
ho bisogno di aiuto urgente almeno per l analisi e l algoritmo.. Grazie...

2 Risposte

  • Re: Aiuto programma 8086 semplice

    Basta che metti una variabile e la inizializzi con il valore di partenza.
    fissi il cliclo a 255
    il ciclo lo fai con l'istruzione loop ed utilizzando il registro cx
    esempio:
     mov cx,10
    ciclo:
    .......... ; qui metti le operazioni che ti interessano
    .......... ; qui metti le operazioni che ti interessano
    loop ciclo
    poi su questa variabile effettui il classico confronto di parità se risulta pari allora incrementi la locazione di memoria altrienti decrementi
    il classico confronto di parita lo si effettua in questo modo:
    mov ax,valore che ti  interessa
    mov bx,2
    div bx
    cmp dx,1 
    je ...... ; c'è il resto quindi il numero era dispari
    jmp xxxxx ; non c'è resto quindi il numero è pari
    spero di esserti stato d'aiuto
  • Re: Aiuto programma 8086 semplice

    Il controllo di parità in binario si fa controllando il bit 0 (tramite un and)
    
    and ax,1
    jz pari
    ... dispari
    
    il risultato sarà 0 per i pari e 1 per i dispari

    In ogni caso, se l'esercizio dice "partendo da 0100" non c'è neanche bisogno del controllo ... basta qualcosa come
    
    mov bx,0100
    ciclo:
    inc byte ptr [bx]
    inc bx
    dec byte ptr [bx]
    inc bx
    
    e ripetere da "ciclo" per 128 volte
Devi accedere o registrarti per scrivere nel forum
2 risposte