Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
11. Jun 2010
Danke, das ist genau das was ich wissen wollte.
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
11. Jun 2010
Mir ging es darum. Ob andere Delphi´s eine warnung auspsucken, wie p80286 beschreibt. Diese "demo" ist nur für diesen zweck.
Danke
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
11. Jun 2010
Hier ist doch keine aufregung. Bitte schau dir den Assemblercode an.
Aber ich wiederhohlen gerne nochmal. Es ging legendlich darum, anderen usern die möglichkeit zu geben nicht in die selbe "falle" zu stolpern. Es war kein 3 Seitenlanger Thread geplant.
Hintergrund warum ich das gemacht habe: Wenn man etwas sucht, ist delphipraxis immer weit oben bei den treffen. (Ich hoffe nur das der...
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
10. Jun 2010
Hi,
Warnungen sind an. Nein es kommt keine warnung. Sonst hätte ich nicht suchen müssen sondern sofort gewusst was schief läuft.
Lasse ich die Optimierung an und mache zusätlich ein WriteLn(i); rein hat i auchwieder den "richtigen" wert. Da kann man dann auch schön sehen das die Optiemierung nicht gut ist. Statt es weiterhin in einem register zu machen, was beim call kurz gepusht wird,...
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
10. Jun 2010
Optimiert hat i den wert 88 nach der schleife. i wird runtergezählt.
Nicht Optimiert hat i den wert 3. i wird hochgezählt.
i ist im weiteren verlauf mein index auf ein anderes Array.
Na wenn das mal kein unterschied ist, weiss ich es nicht.
Edit: Das die bilder sooooo klein sind wusste ich nicht. Man kann es trotzdem lesen.
@uligerhardt, wenn ich ohne den debugger den fehler nicht...
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
10. Jun 2010
Einfach mal den ersten beitrag lesen. Sobald es zu einer ausgabe kommt rennt die schleife richtigrum. Soll ich hier screenshots anhängen oder was?
@blauweiss, ich merke schon Assembler ist nicht deine Welt. Ich denke mal das du nicht weisst wieviel Taktzyklen in einer grossen schleife verloren gehen, oder überhaupt weisst was schneller ist. Ein MOV AX,0 oder ein XOR AX,AX.
Ausserdem wollte...
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
9. Jun 2010
Jo,
in den Projektoptionen habe ich das ja ausgemacht nachdem ich den salat gesehen habe. Es geht nur darum das man es dort z.b. Generell ausmacht und einzelne Proceduren optimiert. Oder halt andersrum.
Steht aber so auch in meinem ersten post.
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
9. Jun 2010
Ne, das ist so nicht richtig. Wie ich oben schrieb braucht es ein cmp (Assembler) weniger. Richtig rum sähe das so aus
mov ,0 // Startwert
schleife:
inc // Wert einen hochzählen
cmp ,$5a // Vergleichen ob MAX erreicht ist.
jne schleife
nach der Optimierung sieht es so aus
Forum: Object-Pascal / Delphi-Language
Delphi
by DelTurbo,
8. Jun 2010
Hi,
damit eventuell andere nicht in diese falle laufen poste ich mal was passiert wenn man die Optimierung an hat.
Eine gaaanz fiese sache ist, das schleifen rückwärts laufen können. Das spart ein cmp. In meinem fall ist das voll in die hose gegangen.
Beispiel:
Ich habe ein InUse = Array of Boolean. Das wird von mehreren Threads genutzt. Und auch wieder frei gegeben. Mein Sourcecode war...