wenn der Parameter ABitIndex per Definition zwischen 0 und 7 (oder 31) liegt, entfällt die Subtraktion...
hier das selbe in
ASM:
Delphi-Quellcode:
Procedure asmBitSet(
Var Value : LongWord;
Const Bit : Byte;
Const State : Boolean);
Register;
Asm
OR CL,CL
JNZ @@True
MOV ECX,[EAX]
BTR ECX,EDX
MOV [EAX],ECX
RET
@@True:
MOV ECX,[eax]
BTS ECX,EDX
MOV [EAX],ECX
end;