: AMOVEW ( src dst u -- )
    ( u ) 0 DO
        SWAP DUP I 1 LSHIFT + A@   ( dst src x )
        ROT TUCK I 1 LSHIFT +      ( src dst x dst )
        A!                         ( src dst )
    LOOP 2DROP ;