Registriert seit: 17. Nov 2005
Ort: Hamburg
1.064 Beiträge
Delphi XE2 Professional
|
AW: Delphi und assembler
4. Dez 2010, 17:43
Versucht es mal so:
Delphi-Quellcode:
FUNCTION Median(a,b,c:integer):integer;
asm
cmp ecx,eax
jle @1
xchg ecx,eax
@1: cmp eax,edx
cmovg eax,edx
cmp ecx,eax
cmovg eax,ecx
end;
Oder etwas länger, dafür ohne bedingten Move-Befehl
Delphi-Quellcode:
FUNCTION Median(a,b,c:integer):integer;
asm
cmp ecx,eax
jle @1
xchg ecx,eax
@1: cmp eax,edx
jle @2
mov eax,edx
@2: cmp ecx,eax
jle @3
mov eax,ecx
@3:
end;
Aufruf :
Showmessage(InttoStr(Median(strtoint(edit1.Text),strtoint(edit2.Text),strtoint(edit3.Text))));
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
|
|
Zitat
|