Logo pl.boatexistence.com

Czy potrafisz mnożyć bitowo?

Spisu treści:

Czy potrafisz mnożyć bitowo?
Czy potrafisz mnożyć bitowo?

Wideo: Czy potrafisz mnożyć bitowo?

Wideo: Czy potrafisz mnożyć bitowo?
Wideo: Ep 005: Shifting Bits to Multiply, Divide, and Convert 2024, Może
Anonim

Liczbę można pomnożyć przez 2 za pomocą operatorów bitowych. Odbywa się to za pomocą operatora przesunięcia w lewo i przesuwając bity w lewo o 1. Daje to dwukrotność poprzedniej liczby. Program, który demonstruje mnożenie liczby przez 2 za pomocą operatorów bitowych, jest podany w następujący sposób.

Jak mnożyć przez Bitwise?

Aby pomnożyć przez dowolną wartość 2 do potęgi N (tj. 2^N) przesunąć bity N razy w lewo Aby podzielić, przesunąć bity w prawo. Bity są całe 1 lub 0 - nie można przesunąć o część bitu, więc jeśli liczba, przez którą mnożysz, nie uwzględnia całkowitej wartości N, tj.

Czy mnożenie bitowe jest szybsze?

Przesuwanie bitów jest nadal szybsze, ale w przypadku mul/div bez potęgi dwójki, zanim wykonasz wszystkie zmiany i dodasz wyniki, znów będzie wolniejsze.

Co to jest szybsze mnożenie lub dzielenie?

Mnożenie jest szybsze niż dzielenie. Na uniwersytecie uczono mnie, że dzielenie trwa sześć razy więcej niż mnożenie. Rzeczywiste czasy zależą od architektury, ale generalnie mnożenie nigdy nie będzie wolniejsze ani nawet tak wolne jak dzielenie.

Czy przesuwanie bitów jest szybsze niż mnożenie?

Przesuwanie bitów w lewo i w prawo jest najwyraźniej szybsze niż operacje mnożenia i dzielenia na większości, a może nawet na wszystkich procesorach, jeśli używasz potęgi dwójki. może zmniejszyć przejrzystość kodu dla niektórych czytników i niektórych algorytmów.

Zalecana: