Another interesting trivia about the x86 registers: while most programmers think of their order as being EAX, EBX, ECX, EDX, ESI, EDI, ESP, EBP, when you look at how the registers are numbered in the instruction set, you see that their true order is different: EAX, ECX, EDX, EBX, ESP, EBP, ESI, EDI.