Kan du gange bitvis?

Indholdsfortegnelse:

Kan du gange bitvis?
Kan du gange bitvis?

Video: Kan du gange bitvis?

Video: Kan du gange bitvis?
Video: Clash-A-Rama: Archer Departure (Season Finale) Clash of Clans 2024, November
Anonim

Et tal kan ganges med 2 ved at bruge bitvise operatorer. Dette gøres ved at bruge venstre shift-operator og flytte bits til venstre med 1. Dette resulterer i det dobbelte af det foregående tal. Et program, der demonstrerer multiplikation af et tal med 2 ved hjælp af bitvise operatorer, gives som følger.

Hvordan multiplicerer du med Bitwise?

For at gange med en hvilken som helst værdi af 2 i potensen af N (dvs. 2^N) skal du flytte bitsene N gange til venstre For at dividere skal du flytte bitsene til højre. Bittene er hele 1 eller 0 - du kan ikke forskyde med en del af en bit, så hvis det tal, du multiplicerer med, ikke faktoriserer en hel værdi af N, dvs.

Er bitvis multiplikation hurtigere?

Bit-shifting er stadig hurtigere, men for ikke-power-of-two mul/div, når du laver alle dine skift og tilføjer resultaterne, er det langsommere igen.

Hvad er hurtigere multiplikation eller division?

Multiplikation er hurtigere end division. På universitetet blev jeg lært, at division tager seks gange så meget som multiplikation. De faktiske timings er arkitekturafhængige, men generelt vil multiplikation aldrig være langsommere eller endda så langsom som division.

Er Bitshifting hurtigere end multiplikation?

At skifte bit til venstre og højre er tilsyneladende hurtigere end multiplikations- og divisionsoperationer på de fleste, måske endda alle, CPU'er, hvis du tilfældigvis bruger en potens på 2. Men det kan reducere kodens klarhed for nogle læsere og nogle algoritmer.

Anbefalede: