leal, ou lea nom complet est "la Charge effective d'adresse" et c'est exactement cela: Il en fait une adresse de calcul.
Dans votre exemple, l'adresse de calcul est très simple, parce que ça ajoute un offset à ebx et stocke le résultat dans eax:
eax = ebx + 0x10
lea peut faire beaucoup plus. Il peut ajouter de registres, de multiplier les registres avec les constantes de 2, 4 et 8 pour l'adresse calculs des mots, des nombres entiers et en double. Il peut également ajouter un offset.
Notez que lea est particulière en ce sens qu'il ne sera jamais modifier les indicateurs, même si vous l'utilisez comme une simple addition, comme dans l'exemple ci-dessus. Les compilateurs parfois exploiter cette fonctionnalité, et de remplacer une outre par une amo pour aider le planificateur. Il n'est pas rare de voir lea instructions de faire de l'arithmétique simple dans le code compilé pour cette raison.