Académique Documents
Professionnel Documents
Culture Documents
2. Transfert :
LODSB, LODSW (Load String Byte, Word), ces instructions chargent les registres AL, AX
avec un élément d'une chaîne pointée par DS:SI (opérande source). Après l'opération, le
registre d'index SI est automatiquement incrémenté ou décrémenté de 1, 2
Exemple1 :
ORG 100h
AL = DS:[SI] LEA SI, a1
MOV AH, 0Eh
si DF = 0 alors MOV CX, 5
SI = SI + 1 m: LODSB
sinon INT 10h
SI = SI - 1 LOOP m
RET a1 DB 'G', 'T',’R’
Remarque :
CLD :Positionne le Drapeau D à 0
STD :Positionne le Drapeau D à
. STOSB, STOSW (Store String Byte, Word), ces instructions chargent l'élément d'une chaîne
pointée par ES : EDI (opérande destination)avec le contenu des registres AL, AX. Après
l'opération, le registre d'index DI est automatiquement incrémenté ou décrémenté de 1, 2 ou 4.
[ES : DI] AL, AX et DI = DI+1 ou +2
MOVSB et MOVSW (Move String Byte, Word), ces instructions transfèrent un octet ou un
mot de la zone mémoire pointée par DS : SI vers la zone mémoire pointée par ES : DI, ces
registres doivent donc être correctement initialisés.
Après l'opération, les registres d'index DI et SI sont automatiquement incrémentés ou
décrémentés de 1, 2 ou 4. Et (les registres AL, AX ne sont pas affectés.
[ES : DI] [DS : SI] et DI =DI+1 ou +2, SI = SI+1 ou +2
Exemple2 :
CMPSB et CMPSW (Compare String Byte et Word), ces instructions comparent un élément
(un octet ou un mot) de deux chaînes de caractères, le premier étant pointé par DS : SI et le
second par ES : DI.
Ces instructions affectent les indicateurs pour indiquer le résultat de la comparaison.
Après l'opération, les registres DI et SI sont automatiquement incrémentés ou décrementés
SCASB, SCASW (Scan String Byte, Word), ces instructions comparent un élément (un octet,
deux octets) d'une chaîne de caractères pointée par ES:DI avec le contenu de AL, AX
Ces instructions seront utilisées pour rechercher un caractère dans une chaîne.
Après l'opération, le registre DI est automatiquement incrémenté ou décrémenté de 1ou2
REPE instruction, elle répète l'instruction présente comme opérande un certain nombre de
fois et ce tant que :
[DS : SI] = [ES : DI] et que la valeur du registre CX est différente de 0..
REPNE instruction, elle répète l'instruction présente comme opérande un certain nombre de
fois et ce tant que :
[DS : SI] [ES : DI] et que la valeur du registre CX est différente de 0..