`swp` is weird and actually writes the first operand into the memory address into the third operand, _and puts the old value into the second operand_.
`swp` is weird and actually writes the first operand into the memory address into the third operand, _and puts the old value into the second operand_.