Способность процессоров Intel быстро вычислять выражения определённого рода, а именно [r32+1|2|4|8*(r32\esp)+C32] иногда используется для оптимизации по быстродействию. Приведём пример такой необходимости. Допустим, мы имеем две величины, хранящиеся в регистрах eax и ebx. Вдруг нам понадобилось присвоить третьей величине edx такое значение:
edx:=10+4*eax+ebx; Это можно сделать так:
   mov edx, eax;
   shl edx, 2;
   add edx, ebx;
   add edx, 10;
Но гораздо проще и быстрее это делается так:
   lea edx, [10+4*eax+ebx];
Следует иметь ввиду, что команда shl выполняется дольше, чем lea (по крайней мере, на моём компьютере shl выполняется 4 такта, а lea всего 1 такт)