Binary Multiplication Calculator
Multiply binary numbers instantly with this free binary multiplication calculator. View the exact product in binary, decimal and hexadecimal, and follow the shift-and-add method through each partial product. It is useful for learning binary arithmetic, checking homework, and understanding how integer multiplication works in digital systems.
Calculations run in your browser. The calculator supports unsigned binary integers and uses JavaScript BigInt for exact integer results.
Multiply two binary numbers
Binary multiplication results
Product in decimal
Product in hexadecimal
Product bit length
Binary long multiplication
Partial products are aligned by bit position. Rows for zero bits contribute zero to the sum.
Partial products and shifts
| Multiplier bit position | Bit | Shift amount | Partial product (binary) | Partial product (decimal) |
|---|
Shift-and-add explanation
Binary multiplication rules
Binary multiplication uses only two digits, 0 and 1. Multiplying a binary number by 0 gives zero; multiplying it by 1 leaves the number unchanged. The main task is aligning and adding shifted partial products.
| Operation | Result | Explanation |
|---|---|---|
0 × 0 | 0 | Zero times zero is zero. |
0 × 1 | 0 | Zero times one is zero. |
1 × 0 | 0 | One times zero is zero. |
1 × 1 | 1 | One times one is one. |
For each bit in the multiplier, starting at the rightmost bit:
- If the bit is
1, include the multiplicand shifted left by that bit's position. - If the bit is
0, the partial product is zero. - Add all partial products using binary addition.
Worked example: 1011 × 101
The binary number 1011 is decimal 11, and
101 is decimal 5. Multiplying them gives decimal 55,
which is 110111 in binary.
The multiplier 101 has 1 bits at positions 0 and 2.
Therefore, the partial products are 1011 and
101100. Adding them gives 110111.
Multiplication by powers of two
Multiplying an unsigned binary integer by \(2^k\) is equivalent to shifting its bits left by \(k\) positions. In binary notation, this appends \(k\) zeros to the right.
| Operation | Binary calculation | Decimal calculation |
|---|---|---|
| Multiply by 2 | 101 × 10 = 1010 | 5 × 2 = 10 |
| Multiply by 4 | 101 × 100 = 10100 | 5 × 4 = 20 |
| Multiply by 8 | 101 × 1000 = 101000 | 5 × 8 = 40 |
Frequently asked questions
1. How do you multiply binary numbers?
Multiply the first number by each bit of the second number, starting at the right. A 1 bit gives a copy of the first number shifted left by that bit's position; a 0 bit gives zero. Add the partial products to get the final result.
2. What is the shift-and-add method?
Shift-and-add multiplication creates a partial product for each bit of the multiplier. It adds a shifted copy of the multiplicand for each 1 bit and then sums those values. The calculator shows each partial product and its shift amount.
3. How many bits can the product have?
If the operands have n and m significant bits, their unsigned product requires at most n + m bits. For example, multiplying two 8-bit unsigned integers produces a result of at most 16 bits.
4. Why is binary multiplication similar to decimal multiplication?
Both methods create shifted partial products and add them. Binary is simpler because each multiplier digit is either 0 or 1, so each row is either zero or a shifted copy of the multiplicand.
5. Does the calculator support negative numbers?
This calculator treats inputs as unsigned binary integers. For signed multiplication, the operands must be interpreted using a defined signed representation such as two's complement, and the product width and overflow behavior must be specified.
6. Can I multiply large binary integers?
Yes. You can choose inputs up to 128 significant bits per operand. JavaScript BigInt performs exact integer arithmetic without the rounding limitations of ordinary JavaScript Number values.
7. Does this calculator send my numbers to a server?
No. The multiplication is performed in your browser using JavaScript. The page does not submit the entered values to a PHP calculation handler.