Der Martin: (C) Grafik - Bitverschiebung - Welcher Sinn?

Beitrag lesen

Hallo Daniela und Markus,

Wenn das nur eine Division ist, warum macht man es nicht konventionellem Weg?
Division ist eine teure Operation, Bitshifting hingegen ist viel schneller.

Genau. Gute Compiler erkennen aber schon beim Übersetzen, wenn der Divisor (oder Multiplikator) eine Konstante und noch dazu eine Zweierpotenz ist, und setzen die Anweisung dann "hinter den Kulissen" gleich mit einem Shift-Right oder Shift-Left um.

Aber wenn man das als Programmierer schon selbst tut, dann zeigt man damit, dass man sich Gedanken darüber macht, was auf CPU-Ebene abläuft. Viele Programmierer denken schon ganz automatisch so maschinennah. Ich gehöre auch zu denen... ;-)

Schönen Sonntag noch,

Martin