About how many significant bits do you expect in this product:
01001010 × 00010101
About 12 significant bits.
There are two instructions that move the result of a multiplication into a general purpose register:
mfhi d # d <— hi. Move From Hi
mflo d # d <— lo. Move From Lo
cannot be used with any of the other arithmetic or logic
If you want to do something with a product, it must first
be moved to a general purpose register.
However there is a further complication on MIPS hardware:
Do not use a multiply or a divide instruction
within two instructions after
The reason for this involves the way the MIPS pipeline works.
On the SPIM simulator this rule does not matter.
Must you move the result of one multiply
before you start another multiply operation?