©Pierre Marchand, 2001 116
6. Modes d’adressage
Indirection registre avec index + offset
mov ax,[ebx + esi * k + 2] ; adresse= ebx + esi*k + 2
Les registres suivants peuvent servir d’index :
eax edi
ebx esi
ecx ebp
edx
Dans ce mode d’adressage, la constante k permet d’ajuster
l’instruction à la taille de l’opérande, de façon à accéder
directement au ieme élément d’un tableau.
Unité A4: Modes d’adressage
et instructions de base
©Pierre Marchand, 2001 117
6. Modes d’adressage
Pour des octets (char, byte, Boolean), k = 1, pour des short, k = 2, pour
des long, k = 4, pour des double, k = 8.
Exemple:
.data tableau dw 50, 75, 342, 9, …
.code ...
lea ebx, tableau
mov esi, i
mov ax, [ebx + esi * 2] ; ax = tableau[i]
...
Unité A4: Modes d’adressage
et instructions de base