'n Getal kan met 2 vermenigvuldig word deur bitsgewyse operateurs te gebruik. Dit word gedoen deur die linkerskuifoperateur te gebruik en die stukkies links met 1 te skuif. Dit lei tot dubbel die vorige getal. 'n Program wat vermenigvuldiging van 'n getal met 2 demonstreer deur bitsgewyse operateurs te gebruik, word soos volg gegee.
Hoe vermenigvuldig jy met Bitwise?
Om te vermenigvuldig met enige waarde van 2 tot die mag van N (d.w.s. 2^N) skuif die bisse N keer na links Om te deel, skuif die bisse na regs. Die bisse is heel 1 of 0 - jy kan nie met 'n deel van 'n bietjie skuif nie, dus as die getal waarmee jy vermenigvuldig nie 'n hele waarde van N faktoriseer nie, maw
Is bitsgewyse vermenigvuldiging vinniger?
Bit-shifting is steeds vinniger, maar vir nie-krag-van-twee mul/div teen die tyd dat jy al jou skofte doen en die resultate byvoeg, is dit weer stadiger.
Wat is vinniger vermenigvuldiging of deling?
Vermenigvuldiging is vinniger as deling. Op universiteit is ek geleer dat deling ses keer die van vermenigvuldiging neem. Die werklike tydsberekeninge is argitektuurafhanklik, maar oor die algemeen sal vermenigvuldiging nooit stadiger of selfs so stadig soos deling wees nie.
Is Bitshifting vinniger as vermenigvuldiging?
Verskuiwing van stukkies links en regs is blykbaar vinniger as vermenigvuldigings- en delingbewerkings op die meeste, miskien selfs al, SVE's as jy toevallig 'n krag van 2 gebruik. Dit is egter kan die duidelikheid van kode vir sommige lesers en sommige algoritmes verminder.