Assembleur, move dx al out sur visual S C++

ledjlale -  
 francois -
probleme d'assemble dans un bloc _asm en c++:
_asm{
mov dx, LPTDataPort
mov al, DataVal
out dx, al
}
d'apres moi: mettre la val LPTDataPort dans dx, pareil pour DataVal dans al, et faire un truc entre dx et al.
Exacte? ou pas. Que renvoi il? dans quoi? .....
merci

1 réponse

  1. francois
     
    DX=16bits
    DL=8bits

    [.............EDX.................]
    [...............][.......DX.......]
    [...............][..DH..][..DL..]

    donc selon le type d'operation à faire tu peux pas le faire su dl si le resultat est DX ! tu dois alors passer par la memoire ou par un autre registe.

    il renvoie dans port
    voir le descritif de l'operande ci dessous

    ---------------------

    OUT OUTimm8,accu port[0000+imm8], accu
    OUT DX,accu port[DX], accu
    0