Multiply the number $(1001)_{2}$ by 3 digit number

177 Views Asked by At

I want to multiply the number $(9)_{10} \rightarrow (1001)_{2}$ by a 3 digit binary number.
1) How I can extract the boolean equations?
2) Make a circuit of it.
so what I did is just see what happen if I multiply it, for example:
$$(1001)_{2}* (A_{1}B_{1}C_{1})_{2}$$ $$A_{1}*1 A_{1}*0 A_{1}*0 A_{1}*0$$ $$B_{1}*1 B_{1}*0 B_{1}*0 B_{1}*0$$ $$C_{1}*1 C_{1}*0 C_{1}*0 C_{1}*0$$ after I do that I need to sum them. so what I choose to user Ripple Carry Adder for that:


circuit

I would like to get some comments if its ok or I need to do it in another way.
thanks!

1

There are 1 best solutions below

0
On

You definitely have to do it differently.

Let's consider an example: $7_{10}\cdot 9_{10} = 111_2\cdot 1001_2$. The result is of course $63_{10}=111111_2$. Now what would your circuit give?

Well, you feed the $7=111_2$ and the $9=1001_2$ into an adder, which calculates $7+9=16=10000_2$ Then you append another bit, which you get from an input "F0" which you nowhere specify. However, it can only be either $0$ or $1$, so the final result from your circuit is either $100000_2$ or $100001_2$. Neither of which equals $111111_2$.

To find out what to do differently, think about the following question:

For the binary number $x=abc_2$ (where $a$, $b$ and $c$ are binary digits), what is the binary representation of $9_{10}\cdot x$? Try a few concrete examples (there are only eight of them, so you can even try all of them; however I'm sure you'll see the pattern before you've done so).

Also, for enlightenment, multiply a three-digit decimal number with $1001_{10}$.