Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.210 Beiträge
 
Delphi 12 Athens
 
#12

AW: ZLib Speed much slower than ZLibEx

  Alt 6. Mai 2021, 08:44
Ja klar, 64 Bit sollte ja die selben mathematischen Gesetze verwenden, so wie das ganze Universum auch.


Pointer(NativeInt(param^.InBuffer) + param^.InPosition)^

(PByte(param^.InBuffer) + param^.InPosition)^

Und Delphi macht quasi implizit ein *1 da rein ... OK, diese 1 wird wegoptimiert, weil unnötig, drum findeste es hier nicht im Compilat/Assembler,
aber für Neugierige zum Nachgucken darfst es gern mal mit PLongInt versuchen.
(PByte(param^.InBuffer) + param^.InPosition * SizeOf(Byte))^

Die Pointeraritmetik, könnte man oben in der Unit über einen Compilerschalter aktivieren (bzw. den Code danach davor schützten, dass es z.B. in den Projektoptionen deaktiviert wird, wobei aber hoffentlich niemand so dumm sein sollte sowas zu machen )
$2B or not $2B

Geändert von himitsu ( 6. Mai 2021 um 08:48 Uhr)
  Mit Zitat antworten Zitat