Een getal kan met 2 worden vermenigvuldigd met behulp vanbitsgewijze operatoren. Dit wordt gedaan door de linker shift-operator te gebruiken en de bits met 1 naar links te verschuiven. Dit resulteert in het dubbele van het vorige nummer. Een programma dat de vermenigvuldiging van een getal met 2 demonstreert met behulp van bitsgewijze operatoren wordt als volgt gegeven.
Hoe vermenigvuldig je met Bitwise?
Vermenigvuldigen met een waarde van 2 tot de macht N (d.w.z. 2^N) verschuif de bits N keer naar links Verschuif de bits naar rechts om te delen. De bits zijn hele 1 of 0 - je kunt niet met een deel van een bit verschuiven, dus als het getal waarmee je vermenigvuldigt geen factor is voor een hele waarde van N ie.
Is Bitsgewijze vermenigvuldiging sneller?
Bit-shifting is nog steeds sneller, maar voor non-power-of-two mul/div tegen de tijd dat je al je shifts doet en de resultaten toevoegt, is het weer langzamer.
Wat is sneller vermenigvuldigen of delen?
Vermenigvuldigen is sneller dan delen. Op de universiteit heb ik geleerd dat delen zes keer zoveel kost als vermenigvuldigen. De werkelijke timing is afhankelijk van de architectuur, maar in het algemeen zal vermenigvuldiging nooit langzamer of zelfs zo traag zijn als delen.
Is Bitshifting sneller dan vermenigvuldigen?
Het naar links en rechts verschuiven van bits is blijkbaar sneller dan vermenigvuldigen en delen op de meeste, misschien zelfs alle, CPU's als je toevallig een macht van 2 gebruikt. kan de duidelijkheid van code voor sommige lezers en sommige algoritmen verminderen.