Move (Load/Store) Instructions
Most of the instructions used in a computer program are instructions that move data. The x86 processor uses variable-length instructions and offers very flexible addressing options.
The Unix syntax of x86 instructions shows data movement from left to right:
movl $0,%eax # 0 -> %eax movl %eax,-32(%rbp) # %eax -> i
There are three data formats that we will use: