Menü
Avatar von rollo69
  • rollo69

624 Beiträge seit 05.04.2002

Dann lasst es doch einfach!

Dann lasst es doch einfach sein, Bitschiebe-Operationen mit einer Division gleichzusetzen.

Das sind zwei grundverschiedene Dinge. Die Tatsache, dass unter bestimmten Bedingungen eine Bitmusterverschiebung und eine Division das gleiche Resultat liefern, mag bei Low-Level-Optimierungen ganz nützlich sein aber mehr auch nicht.

Daher: Wenn man in einer Hochsprache dividieren möchte, dann nimmt man eine Division oder Multiplikation mit dem Kehrwert und wenn man Bits hin und her schieben möchte, dann nimmt man einen entsprechenden Verschiebe-Operator. Problem gelöst.

Wenn dann der Compiler im Hintergrund ein "x / 2" zu "x >> 1" optimiert ist das toll aber in der Realität völlig egal. 95% der Geschwindigkeit kommen durch einen optimalen Algorithmus, die restlichen 5% durch Unmengen an Kleinkram wie so etwas. Und diesen Kleinkram können Compiler heute besser optimieren als jeder Mensch.

Bewerten
- +
Anzeige