Jump anywhere: Difference between revisions

Content added Content deleted
Line 1,972: Line 1,972:
Most of the time you won't be jumping to a specific address. You can place a label before any instruction, and a jump to that label is the same as a jump to the address of that instruction.
Most of the time you won't be jumping to a specific address. You can place a label before any instruction, and a jump to that label is the same as a jump to the address of that instruction.


<lang mips>j GoHere ;the assembler will convert this label to a constant memory address for us.
<lang mips>j GoHere
nop ;branch delay slot. This instruction would get executed DURING the jump. We'll make that instruction a NOP, which does nothing.
nop ;branch delay slot. This instruction would get executed DURING the jump.
;But since NOP intentionally does nothing, it's not a problem.


GoHere
GoHere:
addiu $t0,1 ;this instruction is the first one executed after jumping.</lang>
addiu $t0,1 ;this instruction is the first one executed after jumping.</lang>