Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.686 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: Wie entwickle ich einen performanten Othello Zuggenerato

  Alt 6. Sep 2008, 04:39
Zu 1: Die 64Bit von Freepascal meinen, dass es Kompilate für 64Bit CPUs erstellen kann. So lange du eine solche nicht hast, bringt es dir auch nix. In wie weit sind QWords denn eigentlich "buggy"? Wäre es für deine Zwecke nicht evtl. sogar sinnvoll sich mal mit dem MMX Befehlssatz zu befassen? Dort hast du auch auf einer 32-bittigen CPU 64Bit Register von Hause aus, und man kann u.U. dank SIMD noch ein wenig tricksen.
SSE(2) kämen evtl. auch in Frage, jedoch weiss ich da nicht, in wie weit diese Möglichkeiten bieten integer-mäßig damit zu arbeiten.

Zu 2: Da würde mir nur einfallen das Register so lange nach rechts zu shiften bis es 0 ist, und die Anzahl der Shifts in einem anderen mitzuzählen.
Edit: Oder die einzelnen Positionen nacheinander rausmaskieren, vom nieder- zum höchstwertigen Bit, und sobald das Register 0 ist hast du das höchst vorkommende erwischt. Dürfte schneller sein als Shifts.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat