-
Forum: Sonstige Fragen zu Delphi
by Cöster,
5. Apr 2007
Ich versteh nicht was du meinst. Was geht auch mit Randomize? Was ist "sein Wert"?
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
4. Apr 2007
Also zunächst mal: Bei MUL EDX wird ja EAX mit EDX multipliziert. Das Ergebnis einer Multiplikation zweier 32Bit-Zahlen kann allerdings bis zu 64Bit beanspruchen. Deswegen wird das Ergebnis ins Registerpaar EDX:EAX geschrieben. Die 32 höherwertigen Bits stehen dabei in EDX.
Ursache dafür, dass das Result bei dir 0 ist, könnte sein:
Der Parameter ist 1 :lol:, es ist Zufall (:wink:) oder du...
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
4. Apr 2007
Das liegt wohl daran, dass der Teil zwischen {$IFDEF PIC} und {ELSE} wegfällt.
:wiejetzt: Also das Result der Funktion ist das, was am Ende in EAX steht. Oder was meinst du?
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
4. Apr 2007
Gut, aber Randomize ist in Delphi Language (eine If-Abfrage und die Zuweisung von RandSeed) deutlich leichter zu verstehen als in ASM.
Ok, also:
Neues Projekt
Randomize ins FormCreate schreiben
Haltepunkt bei Randomize setzen (auf den linken Rand des Quelltext-Editors klicken, sodass die Zeile rot markiert wird)
F9
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
4. Apr 2007
Hm? Also es ist die Funktion function Random(const ARange: Integer): Integer;, also auch z.B. Random(4). Die Funktion unterscheidet sich aber natürlich leicht von function Random: Extended;, falls du die meinst.
Ja, allerdings nur in ASM. Um seine Implementierung in Delphi-Language anzugucken, kannst du dir hier den Turbo Exlorer (kostenlos) runterladen, da ist das alles drin enthalten....
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
4. Apr 2007
Selbstverständlich ist das Random. Wieso sollte es das nicht sein? Und wenn du es nicht glaubst, ich kann mich ein drittes Mal wiederholen, wechsel beim Debuggen einfach mal ins CPU-Fenster, dann siehst du den Code selbst.
Was in Randomize passiert, wurde hier jetzt auch schon n paar mal gesagt.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
3. Apr 2007
Ich glaub auch. Aber in Balus Tut sind am Ende ein paar Links zu ASM-Seiten. Da findet man das auch auf jeden Fall.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
3. Apr 2007
Wie das bei PIC ist, weiß ich nicht, da ich nicht weiß, was PIC ist. Aber gelegentlich liest man auch mal {$IFDEF LINUX} Das ist mit Sicherheit vom Betriebssystem vordefiniert.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
2. Apr 2007
Oh Mann, das erste OT-Thema ist beendet und gleich fängt das nächste an. Aber nun gut.
Nein, alles kommt in einen Stack. Das Funktionsprinzip eines Stacks kannst du in der Wikipedia nachlesen.
Irgendne Funktion. Was sie macht? kp
Du musst bedenken, dass entweder der Code zwischen {$IFDEF PIC} und {$ELSE} oder der zwischen {$ELSE} und {$ENDIF} durchgeführt wird, abhängig davon, ob...
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
2. Apr 2007
D.h. du zweifelst selbst an der Richtigkeit der Unschärferelation?
Das halte ich für eine gute Definition des Zufalls: Zufall liegt dann vor, wenn der gleiche Anfangszustand auch zu einem anderen Ergebnis hätte führen können.
Zu dem Photon im Doppelspalt:
Wenn ich es richtig verstehe, ist der einzige Grund, warum man nicht vorher bestimmen könne, durch welchen Spalt das Photon geht,...
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
1. Apr 2007
Wie soll man eine Aussage über die Genauigkeit einer Messtechnik treffen, die nicht bekannt ist?
@ unendlich lange Zahl Pi:
Sicher ist die Zahl unendlich lang und sicher kann man sie deswegen auch nicht ganz genau bestimmen. Es gebe ein Ereignis, welches von der Zahl Pi abhängt. Ab irgendeiner Nachkommastelle wird es für das Ereignis keine Rolle mehr spielen, ob es eintrifft oder nicht....
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
Es hat aber trotzdem eine Ausbreitungsgeschwindigkeit < unendlich. Aber was hat das eigentlich mit unserem OT-Thema zu tun?
Ich hab meinen Gedanken noch nicht zuende geführt:
Es ist also theoretisch möglich, etw. genau zu messen. Theoretisch möglich => möglich => auch nach deiner (Der_Unwissende) Definition von Zufall gibt es diesen also nicht.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
Einmal möglich, immer möglich. Es ist z.B. möglich, dass A=B, es ist aber auch möglich, dass A<>B. Es ist kein Widerspruch zusagen, dass also beides möglich ist (wobei natürlich nicht beides gleichzeitig). Keines von beidem ist jedoch unmöglich.
Sehe ich genauso. Die Tatsache, dass alle uns bekannten Messungen eine gewisse Ungenauigkeit besitzen, bedeutet nicht, dass es unmöglich ist,...
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
@Der_Unwissende:
Achso, ich glaub ich hab jetzt verstanden, wie du das meinst.
Aber das behauptest du nicht, oder? Denn dann hätte ich dich doch nicht verstanden.
Also du bezeichnest das als Zufall, was der Mensch nicht vorhersehen kann. Ich im Gegensatz dazu sehe das als Zufall an, was nicht schon immer feststeht. Dass wir z.B. hier an dieser Stelle genau mit diesen Worten über den...
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
nein, immer noch nicht
Was heißt ein "bit kipt"? Dass man Fließkommazahlen nicht vergleichen darf, liegt daran, dass viele gerundet werden.
Sorry, aber dazu fällt mir nur eins ein: :wall:
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
Genau das ist es: Damit sagst du, dass es möglich ist, dass es irgendwann mal möglich ist. Es ist also möglich.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
Nein, ich meinte das CPU-Fenster. Also nen Haltepunkt beim Randomaufruf reinsetzen, starten und, sobald der Haltepunkt erreicht ist, Strg+Alt+C. Dann ein paar mal F7 und man kann besser nachvollziehen, was passiert. Allerdings musst du dafür ein klitzekleines bisschen ASM können.
Wie kommst du darauf, der Code liegt offen.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
kp ob es mit jeder anderen 4Byte-Konstante genauso gut ginge? Vielleicht kommt das Result aber auch bei dieser Zahl dem Zufall am nächsten.
Vielleicht könnte es für dich auch ganz interessant sein, einfach mal zu gucken, was bei einem Random-Aufruf im CPU-Fenster so alles abgeht. Dann kann man besser nachvollziehen warum und wie Random überhaupt funzt.
-
Forum: Sonstige Fragen zu Delphi
by Cöster,
31. Mär 2007
Das mit Uhrzeit und Datum ist mir nicht bekannt. Der RandSeed wird beim Aufruf von Randomize wenn möglich auf den Var-Parameter von QPC gesetzt, sonst auf den TickCount.
Wenn Randomize nicht aufgerufen wird, wird der RandSeed mit 0 initialisiert.
Beim späteren Aufruf von Random wird der TickCount allerdings nicht mehr verwendet, sondern lediglich ein bisschen mit RandSeed und der...