A good answer might be:

Yes. A general purpose register can hold any 32-bit pattern.

Full-Word Aligned

However, if you want to perform floating point arithmetic, then the floating point number must be in a floting point register.

The previous program exchanged the patterns held at two memory locations. It could just as well been written using general purpose registers.

For both single precision load and store instructions (as with the general purpose load and store instructions) the memory address must be full-word alligned. It must be a multiple of four. Ordinarily this is not a problem. The assembler takes care of this.

QUESTION 8:

Do you think that the SPIM trap handler method that prints an integer can be used for floating point values?