Sorry. It sounded to me like you were saying that you couldn't understand why people thought you were working in decimal.I don't mean to come off as rude but since the beginning of this thread I've always known that.
As I said in my first response, there are tricks to dealing with the conversions and, as with everything, there are tradeoffs involved.
You don't need to implement a general purpose multiplier circuit because the algorithm you need to implement is very narrowly defined. But you do need to make some decisions early on such as what range of values you want to represent? Your schematic implies that you are only interested in working with unsigned three-digit integers (so 000 <= x <= 999). Is that correct? No negative numbers? If not, that makes things easier. Since you represent this range of integers with a 10-bit binary representation, do you want your ALU to be 10-bits wide? Or 12-bits so that it matches up with the bits needed for your I/O? Or what?
There are a several ways to do the conversion. One approach is to build up the converted value incrementally. You can do this with less hardware by having the work performed in a loop, or you can do it all combinatorically. Each has its pros and cons.
