Multiplication of binary numbers is performed in the same way as with decimal numbers.
The multiplicand is multiplied by each bit of the multiplier, starting from the least significant bit.
The result of each such multiplication forms a partial product. Successive partial products are shifted one bit to the left.
The product is obtained by adding these shifted partial products.
Consider an example of multiplication of two numbers, say A and B (2 bits each), C = A x B.
The first partial product is formed by multiplying the B1B0 by A0. The multiplication of two bits such as A0 and B0 produces a 1 if both bits are 1; otherwise it produces a 0 like an AND operation. So the partial products can be implemented with AND gates.
The second partial product is formed by multiplying the B1B0 by A1 and is shifted one position to the left.
The two partial products are added with two half adders (HA). Usually there are more bits in the partial products, and then it will be necessary to use Full Adders.
The least significant bit of the product does not have to go through an adder, since it is formed by the output of the first AND gate as shown in the Figure.
A binary multiplier with more bits can be constructed in a similar manner.
Consider another example of multiplying two numbers, say A (3-bit number) and B (4-bit number).
Each bit of A (the multiplier) is ANDed with each bit of B (the multicand) as shown in the Figure.
The binary output in each level of AND gates is added in parallel with the partial product of the previous level to form a new partial product. The last level produces the final product.
Since J = 3 and K = 4, 12 (J x K) AND gates and two 4-bit ((J - 1) K-bit) adders are needed to produce a product of seven (J + K) bits. Its circuit is shown in the Figure.
Note that 0 is applied at the most significant bit of augend of first 4-bit adder because the least significant bit of the product does not have to go through an adder