学一门汇编,学好寄存器就差不多了。
CPU就是在寄存器和内存之间捣鼓数据。
16位寄存器:AX --> AH、AL
32位寄存器:EAX --> 低16位AX --> AH、AL
64位寄存器:RAX --> 低32位EAX --> 低16位AX --> AH、AL
32位寄存器:WIN32、Windows XP。
AT&T :优先通过寄存器来存放参数。
rdi:8字节 ---> edi:4字节
r8:8字节 ---> r8d:4字节
如果long类型参数超过4个字节,才会使用类似rdi的8字节寄存器。如下图: