Einzelnen Beitrag anzeigen

Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#14

Re: Quicksort Algo für Strings optimieren

  Alt 13. Mär 2008, 22:41
Hallo Union,

Zitat von Union:
Das ist dem Shr vollkommen piepegal, der schiebt einfach.
...und schiebt vorne immer ein 0-Bit nach. Der Compiler darf bei der Division einer vorzeichenbehafteten Zahl (Start und Stop haben im Beispiel den Typ "Integer") durch eine Zweierpotenz das DIV nicht durch SHR ersetzen, weil auch negative Werte vorkommen können. Diese Werte wären nach der Schiebeoperation aber plötzlich positiv, weil das Vorzeichenbit durch SHR nicht dupliziert wird, wie dies bei SAR der Fall ist. Ein Compiler kann nicht wissen, dass dieser Fall zur Laufzeit nicht eintreten wird. Der Programmierer könnte das abschätzen und den geeigneten Datentyp "Cardinal" wählen. In diesem Fall führt der Delphi-Compiler auch die Optimierung durch - jedenfalls dann, wenn links und rechts vom Zuweisungsoperator unterschiedliche Variablen stehen.

Gruß Hawkeye
  Mit Zitat antworten Zitat