When we add 0 to the end of a digit, we can multiply by 10 in a decimal system. For example, a 50 is derived from 5 added with a zero, also 5460 from 546 added with a zero. For a multiplication of 100 or a 1,000 2 and 3 zeros can be added respectively.
In a computer binary system, multiplication by 2 is done when you add a zero to the end of the digit. For example, 110 (6 decimal = 4+2) is then 1100 (12 decimal = 8+4). In a similar way, more zeros can be added and then multiplied by 4, 18, and 16 and so on. This type of multiplication is known as shifting. Every bit, 0 or 1 can be shifted to the succeeding bit position with the first-bit position added a zero.
Arithmetic Logical Unit (ALU)
A complex logic diagram, with the combination of other “black boxes” like square roots, dividers, and adders, etc. make up the ALU. What the designer needs to know is that when two numbers are put into the ALU, and then told to multiply, the result output is known.
Originally these boxes would have had vacuum tubes, in a box that equates to bedroom size. There have been gradual improvements over time and today it now fits on a chip. The principles, however, are still the same.
Thisis theconcept of repetition, especially as computers excel at it. For example, 2*3 means taking three 2’s and adding them together, i.e. 2+2+2=6. So a method of counting and an adder can be used to make a computer multiplier.
From the 2*3 example above, a computer multiplier has an input from the 2 that goes to a 3-bit adder. To form a second input the output of the adder is looped. The second of the numbers that are multiplied sets a flip-flop counter that has a count pulse for every time an addition is made. Hence, a more than 1 counter that makes the adder output to be directed to its input. The initial add giving 100 binary is 2+2 decimal (10 + 10 binary).
Those simple examples can be used in a scaled-up version that can multiply multi-bit numbers. All that is needed is plenty more adders and some logic gates for their control and perhaps a bit of timing thrown in to avoid it all getting mixed up. When you look at nanoseconds, a lot of calculations can be done very quickly. We are still going to have a look at how negative numbers are characterized in computers and how Floating-Point Arithmetic (FPA) can be used to handle huge numbers.