xor rax,rax
I used this construct often to zero a register, in the time that memory and CPU cycles were scarce. But nowadays, my time is a more valuable resource, and I tend to write: mov rax, 0
It takes a somewhat longer instruction code, and a few CPU cycles more, but it conveys meaning better.