Zitat von
himitsu:
vielleicht ist dir noch nicht aufgefallen, daß RandSeed auch noch verändert wird (sonst würdest du beim nächsten Aufruf deiner Funktion den seben Wert erhalben
)
ich hatte mir das mal vor langer Zeit etwa so übersetzt ... glaub ich
Delphi-Quellcode:
Function Random(Range: LongInt): LongInt;
Begin
RandSeed := Int64(RandSeed) * 134775813 + 1;
Result := TLargeIntRec(Int64(Range) * LongWord(RandSeed)).Hi;
End;
aber was mit EBX ist ... k.A.
Ja, das mit RandSeed ist mir bewust. Man kann es entweder auskommentieren, oder das Prigramm 2 mal starten (Ohne randomize()). Beides bringt aber nicht das erwartete Ergbenis.
Zitat von
BUG:
entspricht
braucht aber weniger Prozessortakte, da 0 nicht erst aus dem Speicher geladen werden muss.
Ob das heute noch Sinn macht: keine Ahnung.
MfG,
Bug
Die Begründung das 0 er aus dem Speicher geladen werden müsste ist falsch, und ja es ist auch Heute noch schneller.