Grant Edwards wrote:
> On 2009-01-30, MRAB <goo...@mrabarnett.plus.com> wrote:
>
>>> What is the minimum amount of extra memory required to exchange two
>>> 32-bit quantities? What would be the pseudocode that achieves this
>>> minimum?
>> x ^= y
>> y ^= x
>> x ^= y
>>
>> This is really only of use when working in assembly language.
>
> And rarely then. ;)
>
> [Readability counts everywhere.]
>
It can be useful if you want to swap the contents of 2 registers in ARM
assembly language:

EOR r0,r0,r1
EOR r1,r0,r1
EOR r0,r0,r1

The quickest alternative is to use MOV:

MOV r2,r0
MOV r0,r1
MOV r1,r2

The same number of instructions, program bytes, and clock cycles, but
requiring an additional register!
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to