Skip to content

Commit 3f963cc

Browse files
UjjwalAryaltrekhleb
authored andcommitted
Update README.md (trekhleb#141)
1 parent 50c0259 commit 3f963cc

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

src/algorithms/math/bits/README.md

+19
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,25 @@ inverting all of the bits of the number and adding 1 to it.
9191

9292
> See `switchSign` function for further details.
9393
94+
#### Multiply
95+
96+
This method multiplies two numbers(integer) using bitwise operators. This method is based on that "Every number can be denoted as the sum of powers of 2".
97+
98+
```
99+
Let us take two numbers number1 and number2.
100+
101+
number1 * number2 = number1 * (Representation in Base 2)
102+
103+
Let us take number2 = 8 = 0b 1000
104+
105+
number1 * number2 = number1 * (1*8 + 0*4 + 0*2 + 0*1)
106+
= number1 * 1 * (1<<3) + number1 * 0 * (1<<2) + number1 * 0 * (1<<1) + number1 * 0 * (1<<0)
107+
= (number1<<3) * 1 + (number1<<2) * 0 + (number1<<1) * 0 + (number1<<0) * 0
108+
```
109+
110+
111+
> See `multiply` function for further details.
112+
94113
## References
95114

96115
- [Bit Manipulation on YouTube](https://www.youtube.com/watch?v=NLKQEOgBAnw&t=0s&index=28&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8)

0 commit comments

Comments
 (0)