Your numbers look a bit off. These are my interpretations:
1) I-type
0x34422345
001101 00010 00010 0010001101000101 (binary)
op (13) rs (2) rt (2) imm (0x2345)
=> ori $v0,$v0,0x2345
2) I-type
0x24020007
001001 00000 00010 0000000000000111
op (9=addiu) rs (0) rt (2) imm (7)
=> addiu $v0,$zero,7
3) R-type
0x00621021
000000 00011 00010 00010 00000 100001
op (0) rs (3) rt (2) rd (2) shift function (33)
=> addu $v0,$v1,$v0
Here's a list of opcode/function numbers.