John Abel Doe
John Abel Doe

Reputation: 27

Understanding the mov instruction

I don't understand what the 0x83443f does. The value stored in 0x83443f is 10, the value stored in %eax is 2, yet it gives 14 after it runs the line:

mov 0x83443f(,%eax,4), %eax

Upvotes: 2

Views: 85

Answers (1)

Sep Roland
Sep Roland

Reputation: 39556

The content of memory location 0x83443fh is not used.

The scaled addressing mode will multiply the contents of %eax (2) by 4 to obtain the address 0x83443fh + 8 = 0x834447h. This location's content will be moved to the %eax register.

Upvotes: 3

Related Questions