MIPS assembler program

Write a MIPS assembler program load.s which reads MIPS instructions as signed decimal integers until it reads the value -1, then executes the instructions.
load.s should read instructions until it reads the value -1.
load.s should then print a message, load the instructions, print another message, exactly as in the examples below.
For example, below is a tiny MIPS assembler program which prints 42. The comment on each line shows how the instruction is encoded, as a hexadecimal and as a signed decimal integer; it is this signed integer value that your program will read.
li $a0, 42 # 3404002a 872677418
li $v0, 1 # 34020001 872546305
syscall # 0000000c 12
jr $ra # 03e00008 65011720
This is what load.s must do.
Enter mips instructions as integers, -1 to finish:
Starting executing instructions
42Finished executing instructions