[fpc-pascal] Reversing bit-order of byte
Sven Barth
pascaldragon at googlemail.com
Thu May 3 18:00:07 CEST 2012
On 03.05.2012 10:50, David Butler wrote:
> If you want to go assembly:
>
> function ReverseBits(const Value: LongWord): LongWord; register; assembler;
> asm
> BSWAP EAX
> MOV EDX, EAX
> AND EAX, 0AAAAAAAAh
> SHR EAX, 1
> AND EDX, 055555555h
> SHL EDX, 1
> OR EAX, EDX
> MOV EDX, EAX
> AND EAX, 0CCCCCCCCh
> SHR EAX, 2
> AND EDX, 033333333h
> SHL EDX, 2
> OR EAX, EDX
> MOV EDX, EAX
> AND EAX, 0F0F0F0F0h
> SHR EAX, 4
> AND EDX, 00F0F0F0Fh
> SHL EDX, 4
> OR EAX, EDX
> end;
You know that he asked for ARM not x86?
Regards,
Sven
More information about the fpc-pascal
mailing list