Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 41

Discussione: [Assembly] addizione

  1. #1

    [Assembly] addizione

    CIao raga, sto imparando l'assembly a scuola. Dovrei dare un piccolo programmino, che faccia la somma tra due numeri. Ma questa somma deve essere a 4 byte. Potete darmi una dritta?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Quale assembly stai studiando? Dipende dal tipo di CPU e dalla modalita' con cui la usi ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    oopppss.. hai ragione. Sto studiando l' 8086.
    Uso però un emulatore 8086.

  4. #4
    I registri nell'8086 sono a 2 byte ...
    Comunque:
    codice:
    mov ax, numero1
    mov bx, numero2
    
    add ax,bx

  5. #5
    Grz per l tuo aiuto menphisx, purtroppo quello già lo sapevo.
    Il mio problema è proprio questo. Realizzarlo su 4 byte.

  6. #6
    sapete dirmi se è possibile accodare due registri di 16 bit. Ad esempio:
    DX con AX???
    DX:AX.

  7. #7
    Utente di HTML.it L'avatar di hcka
    Registrato dal
    Oct 2002
    Messaggi
    435
    Ciao, ahimé non ricordo quasi nulla di Assembly, comunque, se non ricordo male i professori volevano farci gestire l'overflow con questo esercizio... Quindi bisogna giocare anche con quello...

    Spero di esserti stato utile.

  8. #8
    Si, sto pensando anke a quello. Ma sapresti dirmi se posso accodare due registri generali??
    tipo DX:AX???

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non puoi usare automaticamente i due registri.

    Se devi fare la somma di

    BX:CX

    con

    DX:AX

    in modo che questi ultimi contengano il risultato, devi scrivere

    ADD AX,CX
    ADC DX,BX
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Io dovrei fare un piccolo programmino che faccia la somma su 4 byte. e quindi avevo pensato di utilizzare 2 registri per ogni operando.
    Non ho capito il tuo post Oregon.
    Tu se ho capito bene, sommi AX con CX mettendo il risultato in AX, dopodiche, sommi DX e BX con il flag di carry memorizzando tutto in DX??

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.