Forum: Programmieren allgemein
by himitsu,
23. Jun 2014
Ja, denn er braucht auch mal mehr, als nur 64 Bit.
Binär könnte man das über mehrere Int64 lösen, aber die Umwandlung nach Dezimal wird dann ein bissl umständlicher.
Forum: Programmieren allgemein
by himitsu,
22. Jun 2014
Ich hatte das auch schon länger laufen lassen. :angel2:
Aber ich hatte natürlich auch schon das verhalten, daß bei mehreren Durchgängen heute teilweise andere Ergebnisse rauskommen, als vor ein paar Stunden.
Außer beim Math sollten die Werte der jeweiligen 3 und B-Durchläufe im Durchschnitt gleich sein und Random im gleichen Verhältnis ein bissl ansteigen.
Und bei Math kommt es dann auf...
Forum: Programmieren allgemein
by himitsu,
20. Jun 2014
Daß die Varianten mit und ohne Ofset gleich schnell sind, hatte ich fast erwartet, wobei das früher aber auch mal von der größe des Offsets abhing, da kleinere Vielfache von 2 direkt in einem Index-Befehl kombiniert werden können.
Aber daß nun Byte und Integer gleich schnell sind, war bissl überraschen, aber das liegt wohl an der Ivy-Architektur.
Eigentlich sind ja zusätzliche...
Forum: Programmieren allgemein
by himitsu,
19. Jun 2014
Es kommt drauf an, wie der Compiler der Zugriff optimiert, denn durch verschieben des Offsets (genauer der Startadresse des Arrays, für die Berechnung der Indexposition) kann man diese Substraction entfernen.
Aber man kann ja das Array auch nur hinten kürzen. :angel:
Wobei diese kleine Offset-Berechnung am Ende eh nicht auffallen würde, falls Delphi das nicht wegoptimiert, da der restliche...
Forum: Programmieren allgemein
by himitsu,
19. Jun 2014
Das Setup kann man weglassen, wenn man stattdessen eine Konstente verwendet.
Aber zumindestens kann man mit 2 Schleifen das Var-Array befüllen.
Oder besser man macht das als Konstante, wobei es, wenn man davon ausgehen würde, daß immer nur Hex-Werte im String stehen, das Array nicht komplett von #0 bis #255 (AnsiChar) groß sein muß.
array oder array wenn nur Großbuchstaben (array oder array)
Forum: Programmieren allgemein
by himitsu,
19. Jun 2014
Bei Letzerem (Array-Input) kann man natürlich die BCD-Berechnungen weglassen und einfach direkt jedes Byte in einen String umwandeln (Format('$%d ', ]) und diese aneinanderhängen.
Nee, falsch geguckt ... geht natürlich nicht. :oops:
Aber jenachdem wie schnell die BCD-Berechnugen sind, kann man hier auch erstmal je 4 bis 8 der Bytes zu Integer oder Int64 zusammenfassen und dann damit...