MOV - Move Byte or Word
Usage: MOV dest,src
Modifie les Flags suivants: Aucun(e)
Copie des bytes ou words de l'opérande source vers l'opérande destination. Si la destination est SS ( Stack Segment ) , les interruptions sont desactivées exceptées sur des anciens CPU 808x. Certains CPUs désactivent les interruptions si la destination est n'importe lequels des registres segment.
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
reg,reg | 2 | 2 | 1 | 2 |
mem,reg | 3 | 2 | 1 | 2-4 |
reg,mem | 5 | 4 | 1 | 2-4 |
mem,immed | 3 | 2 | 1 | 3-6 |
reg,immed | 2 | 2 | 1 | 2-3 |
mem,accum | 3 | 2 | 1 | 3 |
accum,mem | 5 | 4 | 1 | 3 |
segreg,reg16 | 2 | 2 | 3 | 2 |
segreg,mem16 | 5 | 5 | 9 | 2-4 |
reg16,segreg | 2 | 2 | 3 | 2 |
mem16,segreg | 3 | 2 | 3 | 2-4 |
reg32,CR0/CR2/CR3 | 6 | 4 | ||
CR0,reg32 | 10 | 16 | ||
CR2,reg32 | 4 | 4 | 3 | |
CR3,reg32 | 5 | 4 | 3 | |
reg32,DR0/DR1/DR2/DR3 | 22 | 10 | 3 | |
reg32,DR6/DR7 | 22 | 10 | 3 | |
DR0/DR1/DR2/DR3,reg32 | 22 | 11 | 3 | |
DR6/DR7,reg32 | 16 | 11 | 3 | |
reg32,TR6/TR7 | 12 | 4 | 3 | |
TR6/TR7,reg32 | 12 | 4 | 3 | |
reg32,TR3 | 3 | |||
TR3,reg32 | 6 | |||
MOVS - Move String (Byte ou Word)
Usage: MOVS dest,src
MOVSB
MOVSW
MOVSD (386+)
Modifie les Flags suivants: Aucun(e)
Copie des données adressées par DS:SI vers la location ES:DI et met à jour SI et DI. SI et DI sont incrémentés si DF est éffacé et sont décrémentés si DF est à 1.
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
dest,src | 5 | 7 | 7 | 1 |
MOVSX - Move with Sign Extend (386+)
Usage: MOVSX dest,src
Modifie les Flags suivants: Aucun(e)
Copie la valeur de l'opérande source vers le registre de destination avec le signe étendu.
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
reg,reg | 3 | 3 | 3 | |
reg,mem | 6 | 3 | 3-7 |
MOVZX - Move with Zero Extend (386+)
Usage: MOVZX dest,src
Modifies Flags: None
Copie la valeur de l'opérande source vers le registre de destination avec les zeros étendus.
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
reg,reg | 3 | 3 | 3 | |
reg,mem | 6 | 3 | 3-7 |
MUL - Unsigned Multiply
Usage: MUL src
Modifie les Flags suivants: CF OF (AF,PF,SF,ZF indéfini)
Multiplication non signée de l'accumulateur vers la source. Si la source est une valeur du type byte, alors AL est utilisé comme un autre multiplieur et le résultat est placé dans AX. Si la source est une valeur du type word, alors AX est multiplié par la source et DX:AX recoit le résultat. Si la source est une valeur DoubleWord, alors EAX est multiplié par la source et EDX:EAX recoit le résultat.
Horloges | ||||
---|---|---|---|---|
opérandes | 286 | 386 | 486 | Taille en Bytes |
reg8 | 13 | 9-14 | 13-18 | 2 |
reg16 | 21 | 9-22 | 13-26 | 2 |
reg32 | 9-38 | 13-42 | 2-4 | |
mem8 | 16 | 12-17 | 13-18 | 2-4 |
mem16 | 24 | 13-26 | 12-25 | 2-4 |
mem32 | 12-21 | 13-42 | 2-4 |