mmm... hace mucho no toco esto, CREO que el salto es relativo al PC, es decir, si vos le das en el "jump_address" el valor 3, te va a saltar 3 instrucciones hacia adelante, (no me acuerdo si considera la instruccion del PC como la instruccion 1, o 0 (esto fijate) ), y para saltar hacia atras seria simplemente poner el -3, me parece que si, que trabaja en complemento a 2 en MIPS
si tenes una forma de obtener la direccion del salto, podes probarlo poniendo un salto a la instruccion anterior y fijandote el "jump_add"