1: | function getWay(sx, sy, zx, zy: integer): ArrayOfPoint; |
1: | program Untitled; |
1: | program Untitled; |
1: | function TForm1.FindDirectWay2(sx, sy, zx, zy: integer): ArrayOfPoint; |
1: | // Kleine Änderungen und den Ansatz das zwischenspeichern über TPoint zumachen von Horst_H übernommen. |
1: | procedure TForm1.Button1Click(Sender: TObject); |
1: | procedure TForm1.Button2Click(Sender: TObject); |
1: | FindDirectWay2-------- |
1: | case test of |
1: | [# [134] case test of |
1: | 2.82446200000000E+003 // = queryperformancefrequency/1000 |
1: | program Untitled; |
1: | FindDirectWay2-------- |
1: | // i in EBX |
1: | // i in ESI |
![]() ![]() |
Könnte man da dann das inline für prozeduren anwenden? |
![]() ![]() | ||
So nach ein paar änderungen also erneut der Vergleich.
Button1 und Button2 aus dem Grund da es teilweise einen Unterschied macht. Wieso weis ich nicht. Lösung von mir: Delphi-Quelltext
|
![]() ![]() |
Die schleife meiner Funktion sieht in Assembler dann so aus bei D6: for i := 1 to l do mov edx,[ebp-$0c] test edx,edx jle +$53 f := f - s; sub eax,[ebp-$10] if f <= 0 then test eax,eax jnle+$09 f:=f+1; add eax,[ebp-$0c] tp.Y := tp.Y + yd; mov ecx,[ebp-$08] add [ebp-$14],ecx tp.X := tp.X + xd; mov ecx,[ebp-$04] add [ebp-$18],ecx for i := 1 to l do dec edx jnz -$19 jmp +$38 |
1: | EAX zum kopieren |
1: | tPointDummy = array[0..0] of tPoint; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!