Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#9

Re: Assembler: Reihenfolge eines Bitfelds umdrehen

  Alt 25. Jun 2005, 10:15
Delphi-Quellcode:
{reverse the bit order from a integer}
function SwapBits(Value, Bits: LongWord): LongWord; register;
asm
       BSWAP EAX
       MOV ECX,EAX
       AND EAX,0AAAAAAAAh
       AND ECX,055555555h
       SHR EAX,1
       SHL ECX,1
       OR EAX,ECX
       MOV ECX,EAX
       AND EAX,0CCCCCCCCh
       AND ECX,033333333h
       SHR EAX,2
       SHL ECX,2
       OR EAX,ECX
       MOV ECX,EAX
       AND EAX,0F0F0F0F0h
       AND ECX,00F0F0F0Fh
       SHR EAX,4
       SHL ECX,4
       OR EAX,ECX
       AND EDX,01Fh
       JZ @@1
       MOV ECX,32
       SUB ECX,EDX
       SHR EAX,CL
@@1:
end;
aus meinem DEC,

gruß Hagen
  Mit Zitat antworten Zitat