Multiplying numbers with number 12 on Logisim
Reading your question led me initially to a high level solution.

Your text mentions multiplication and addition. So, I thought about how to accomplish this task and what came to mind was to perform two multiplications and an addition.

$$Input(b) * 1100 = (Input(b) * 1000) + (Input(b) * 0100)$$

And we know that binary multiplication by powers of 2 is just an equivalent number of bit shifts to the left.

So in Logisim I came up with the following high level implementation. The registers are there just so it can easily be seen what the values are.



Since your question also stated that everything should be implemented on a gate level, I broke the above image into gate level equivalent. The shift registers are not needed as you can just route the signals accordingly and implement a few 1 bit adders with carry.

Output Bits 0 and 1 will always be zero.

Output Bit 2 will always be Input bit 0. There is no Carry in.

Output Bits 3 thru 6 will be the results of the additions.

Output Bit 7 will be the carry out of the last addition.



There are several gates that can be eliminated, however for understanding I feel it better to keep the gates there to preserve the look of the adders for the visualization of whats happening.