Answer: 500 bytes
Number of registers $= 64$
Number of bits to address register $=\left \lceil \log_{2}64 \right \rceil= 6-\text{bits}$
Number of Instructions $= 12$
Opcode size $=\left \lceil \log_{2}12 \right \rceil = 4$
\begin{array}{|c|c|c|c|} \hline \text {Opcode$(4)$} & \text{ reg1$(6)$}& \text{reg2$(6)$} & \text{reg3$(6)$} & \text{Immediate$(12)$} \\\hline \end{array}
Total bits per instruction $= 34$
Total bytes per instruction $= 4.25$
Due to byte alignment we cannot store $4.25 \text{ bytes},$ without wasting $0.75\;\text{ bytes.}$
So, total bytes per instruction $= 5$
Total number of instructions $= 100$
Total size $=$ Number of instructions $\times$ Size of an instruction
$\qquad =100\times 5= 500 \text{ bytes}$