What does the bracket in `movl (%eax), %eax` mean?

Lord Loh. picture Lord Loh. · Jul 25, 2011 · Viewed 30.2k times · Source

I have googled enough but could not figure out what the bracket () means. Also, I see some syntax as movl 8(%ebp), %eax

Could some someone suggest me some good reference? I have not been able to find any in the top 20 results from Google.

Answer

LaC picture LaC · Jul 25, 2011

%eax is register EAX; (%eax) is the memory location whose address is contained in the register EAX; 8(%eax) is the memory location whose address is the value of EAX plus 8.