Snake851,
You multiply binary numbers just like you do any other number in any other base, only with binary it's slightly easier.
Lets take two to digit numbers and look at the general process which is actually base / radix indipendant therefor the two two digit numbers can be shown algebraicly as,
1, AB
2, CD
And we know the result can only be a maximum of four digits in that base so,
r, WXYZ
We know from school that AB x CD = WXYZ is worked out as
Z = D.B
Y = D.A + C.B + carry from Z
X = C.A + carry from Y
W = carry from X
Now in binary it can be seen that the multiplication is simply the AND function
0 x 0 = 0 = 0 & 0
0 x 1 = 0 = 0 & 1
1 x 0 = 0 = 1 & 0
1 x 1 = 1 = 1 & 1
This means in the above equations for W X Y Z the likes of B.D = B&D
So what you have is an array of binary 1 bit multipliers or two input AND gates the outputs of which go into a standard array of adders.
You can if you are fealing upto it look at the array of adders and make a carry lookahead generator in the same way you do with adders.
However instead consider a different use for the full adder in that the carry bit can be used as a fiddle bit (the arangment is actually called a "Carry Save Adder" or CSA) I won't go through it here as you can look it up with pretty pictures etc,
**broken link removed**
Then if you have a mind that likes folding things back on themselves in two dimensional arrays you can come up with an inverted tree of CSA's known as the Wallace Tree.
Surprisingly people still right papers about various forms of CSA trees to get faster multiplication etc.
Anyway, I've given you enough here to work out the answer to your question then go on some to big and beter multipliers without having to follow the link so "manfally resist" till youve had a try.