Skip to main content

Binary Multiplication Calculator

Our free binary calculator solves binary multiplication problems. Get worked examples, visual aids, and downloadable results.

Share this calculator

Formula

Binary Multiplication: Shift-and-add method using partial products

Binary multiplication generates partial products by multiplying the multiplicand by each bit of the multiplier. If the bit is 1, the partial product is the multiplicand shifted left by the bit position. If the bit is 0, the partial product is zero. All partial products are summed to produce the final result.

Worked Examples

Example 1: Multiplying 4-bit Binary Numbers

Problem: Multiply binary 1011 (decimal 11) by 1101 (decimal 13).

Solution: Generate partial products:\n 1011 (multiplicand = 11)\n x 1101 (multiplier = 13)\n ------\n 1011 (1011 x 1, shift 0)\n 0000 (1011 x 0, shift 1)\n 1011 (1011 x 1, shift 2)\n 1011 (1011 x 1, shift 3)\n --------\n10001111 (sum of partial products)\n\nDecimal check: 11 x 13 = 143\nBinary 10001111 = 128+8+4+2+1 = 143

Result: 1011 x 1101 = 10001111 (decimal 143, hex 0x8F)

Example 2: Multiplying by a Power of 2

Problem: Multiply binary 10110 (22) by 1000 (8).

Solution: Since 1000 is 2^3, multiplication equals shifting left by 3:\n 10110 (22)\n x 1000 (8)\n -------\n 00000 (10110 x 0, shift 0)\n 00000 (10110 x 0, shift 1)\n 00000 (10110 x 0, shift 2)\n 10110 (10110 x 1, shift 3)\n --------\n10110000 (simply shifted left by 3)\n\nDecimal: 22 x 8 = 176\nBinary 10110000 = 128+32+16 = 176

Result: 10110 x 1000 = 10110000 (decimal 176, equivalent to left shift by 3)

Frequently Asked Questions

How does binary multiplication work?

Binary multiplication follows the same principles as decimal long multiplication but is simpler because each multiplier digit is either 0 or 1. You multiply the entire multiplicand by each bit of the multiplier one at a time. If the multiplier bit is 1, you write down the multiplicand shifted left by the appropriate number of positions. If the multiplier bit is 0, you write zeros. After generating all partial products, you add them together to get the final result. This simplicity makes binary multiplication ideal for hardware implementation since each partial product is either a shifted copy of the multiplicand or zero, requiring no actual multiplication, only shifting and addition.

What are partial products in binary multiplication?

Partial products are the intermediate results generated when multiplying the multiplicand by each individual bit of the multiplier. In binary, each partial product is either the multiplicand shifted left by the bit position or zero. For example, multiplying 1011 by 1101: the rightmost bit (1) gives partial product 1011, the next bit (0) gives 0000 shifted left by 1, the next bit (1) gives 1011 shifted left by 2 (101100), and the leftmost bit (1) gives 1011 shifted left by 3 (1011000). These four partial products are then summed to produce the final answer of 10001111. Understanding partial products is crucial for both manual calculation and digital circuit design.

How do computers multiply binary numbers in hardware?

Computer hardware uses several approaches for binary multiplication. The simplest is the shift-and-add method, which directly implements the long multiplication algorithm by shifting the multiplicand and conditionally adding based on each multiplier bit. This is slow for large numbers since it processes one bit per clock cycle. Faster methods include array multipliers that compute all partial products simultaneously using a grid of AND gates, then sum them with adder trees. The most advanced approach is the Booth algorithm, which reduces the number of additions by encoding groups of multiplier bits and handling sequences of ones efficiently. Modern processors use modified Booth encoding with Wallace tree adders to multiply 64-bit numbers in just a few clock cycles.

What is the maximum result size for binary multiplication?

When multiplying two binary numbers, the maximum number of bits in the product equals the sum of the bits in the two operands. For example, multiplying a 4-bit number by a 4-bit number produces at most an 8-bit result. The largest 4-bit number is 1111 (15) and 15 times 15 equals 225, which is 11100001 in binary (8 bits). This property is important for hardware design because it determines the width of result registers. In a 32-bit processor multiplying two 32-bit integers, the full result needs 64 bits. Most processors provide both a lower-half and upper-half result register to capture the complete product without overflow.

What is the Booth multiplication algorithm?

The Booth algorithm is an efficient method for multiplying signed binary numbers in twos complement representation. Instead of examining one multiplier bit at a time, Booth examines pairs of adjacent bits to determine the operation: if the pair is 01 (transition from 0 to 1), it adds the multiplicand; if 10 (transition from 1 to 0), it subtracts; if 00 or 11, it does nothing. This reduces the number of additions needed, especially when the multiplier contains long runs of ones. Modified Booth encoding examines three bits at a time and is the standard in modern processors. The algorithm handles negative numbers naturally without requiring sign extension or separate sign handling, making it elegant for hardware implementation.

How is binary multiplication used in digital signal processing?

Digital signal processing relies heavily on binary multiplication for filtering, transformation, and analysis of signals. FIR (Finite Impulse Response) filters multiply each input sample by a coefficient and sum the results, requiring thousands of multiplications per second. FFT (Fast Fourier Transform) algorithms use complex multiplication to convert signals between time and frequency domains. Audio processing multiplies samples by gain values for volume control and by filter coefficients for equalization. Image processing convolves pixel values with kernel matrices through multiplication and accumulation. DSP processors include dedicated multiply-accumulate (MAC) units that can perform a multiplication and addition in a single clock cycle, optimizing these common operations.

References