Delphi/Code assembleur en Delphi
Apparence
< Delphi
Depuis Turbo Pascal 1.0, l’utilisation de code assembleur avec des langages de Borland (maintenant Embarcadero) est relativement facile. En Delphi, insérez un bloc de code assembleur entre asm...end; à l'intérieur d'un bloc de code ou alors déclarez toute la fonction procédurale en tant qu'assembleur. Des variables globales ou locales peuvent être utilisées normalement, mais bien sûr ils fonctionneront comme des pointeurs.
Exemples :
function StrLen (S : Pchar ) : cardinal;
begin
asm
MOV EDX, EDI
MOV EDI, EAX
MOV ECX,0FFFFFFFFh
XOR AL, AL
REPNE SCASB
MOV EAX, 0FFFFFFFEh
SUB EAX, ECX
MOV EDI, EDX
end;
end;
function StrLen (S : Pchar) : cardinal; assembler;
asm
MOV EDX, EDI
MOV EDI, EAX
MOV ECX, 0FFFFFFFFh
XOR AL, AL
REPNE SCASB
MOV EAX, 0FFFFFFFEh
SUB EAX, ECX
MOV EDI, EDX
end;