Home > Blockchain >  What does mov edx, [x 4] do in assembly language?
What does mov edx, [x 4] do in assembly language?

Time:10-13

In assembly language, what does the second line of code do? What happened when this code was executed?

x DWORD 1, 2, 3, 4, 5, 6, 7, 8

mov edx, [x 4]

CodePudding user response:

mov is an instruction which copies data between registers, or to/from a specified memory location.

TLDR: mov edx, [x 4] loads a dword (4 bytes) starting from the fourth byte of x (which has value = 2), into the edx register.


In the memory the x array can be seen as:

0x00000001,
0x00000002,
0x00000003,
0x00000004,
0x00000005,
0x00000006,
0x00000007,
0x00000008

The address of x corresponds to the first byte of 0x00000001. The fourth byte after x is the first byte of 0x00000002. After this byte 32 bits are loaded into edx. So in the end the value 0x00000002 is inside edx.

  • Related