From Dmitry Kiryashov [zews at AHA.RU] a) abcd.efgh -> bcda.fghe mov W, <<X rl X ;bcdefgha mov W, <>X ;...a...e xor W, X and W, #$11 ;...<a^e>...<e^a> xor X, W ;bcdafghe b) abcd.efgh -> dabc.hefg mov W, >>X rr X ;habcdefg mov W, <>X ;d...h... xor W, X and W, #$88 ;<d^h>...<h^d>... xor X, W ;dabchefg