Search code examples
assemblyobjdump

What does "-0x1(%edx,%ecx,1)" mean in objdump output?


Using objdump to understand a binary and I realize I'm not fluent enough in ASM syntax. What does the following notion mean?

xor    %al,-0x1(%edx,%ecx,1)

And while you're at it - what should I search for in order to find docs about such notions?


Solution

  • The parentheses are memory offsets:

    -0x1(%edx,%ecx,1) (AT&T syntax) is equal to [edx+ecx*1-1] (Intel syntax)

    Quick guide for AT&T assembly syntax (as per your request).