Folge dem Video um zu sehen, wie unsere Website als Web-App auf dem Startbildschirm installiert werden kann.
Anmerkung: Diese Funktion ist in einigen Browsern möglicherweise nicht verfügbar.
Original geschrieben von squeaker
Warum diskutieren wir eigentlich wenn wir sowieso einer Meinung sind?
// Reverse the 32-bits in EAX, leaving the result in EBX:
mov( 32, cl );
RvsLoop: shr( 1, eax ); // Move current bit in EAX to the carry flag.
rcl( 1, ebx ); // Shift the bit back into EBX, backwards.
dec( cl );
jnz RvsLoop
//optimierte Version
mov( eax, edx ); // Make a copy of the odd bits in the data.
shr( 1, eax ); // Move the even bits to the odd positions.
and( $5555_5555, edx ); // Isolate the odd bits by clearing even bits.
and( $5555_5555, eax ); // Isolate the even bits (in odd posn now).
shl( 1, edx ); // Move the odd bits to the even positions.
or( edx, eax ); // Merge the bits and complete the swap.
mov( eax, edx ); // Make a copy of the odd numbered bit pairs.
shr( 2, eax ); // Move the even bit pairs to the odd posn.
and( $3333_3333, edx ); // Isolate the odd pairs by clearing even pairs.
and( $3333_3333, eax ); // Isolate the even pairs (in odd posn now).
shl( 2, edx ); // Move the odd pairs to the even positions.
or( edx, eax ); // Merge the bits and complete the swap.
mov( eax, edx ); // Make a copy of the odd numbered nibbles.
shr( 4, eax ); // Move the even nibbles to the odd position.
and( $0f0f_0f0f, edx ); // Isolate the odd nibbles.
and( $0f0f_0f0f, eax ); // Isolate the even nibbles (in odd posn now).
shl( 4, edx ); // Move the odd pairs to the even positions.
or( edx, eax ); // Merge the bits and complete the swap.
bswap( eax ); // Swap the bytes and words.