#define exchange(a,b) __asm mov eax, a \
__asm xchg eax, b \
__asm mov a, eax
#define exchange(a,b) __asm { __asm mov eax, a \
__asm xchg eax, b \
__asm mov a, eax }