5.10 Based scaled indexed addressing mode

This is similar to a based-indexed operand, except a scale is also specified. The scale is an integer that is 1, 2 or 4. The operand is the value at the effective address computed as a sum of a displacement, a base register and the product of the scale and an index register.

Observe the following example:

movw $25,-4(%ebp,%eax,2)  
    

In this example, the effective address of the destination is four bytes before the address specified by the sum of ebp and the product of 2 and eax.

Like the ”Based Indexed” mode, this addressing mode also supports a missing base register. The following is an example:

movw $25,L1(,%eax,2)  
    

When a base register is not specified, the value supplied by the base register is zero.