JMPRET
– Referencia del Lenguaje Ensamblador
JMPRET
instrucción: Salta a la dirección con la intención de "regresar" a otra dirección.
JMPRET
RetInstAddr,
#
Resultado: PC + 1 se escribe el campo-s del registro indicado por el campo-d.
RetInstAddr
(campo-d) es el registro en el cual se almacena la dirección de regreso
(PC+1) frecuentemente es la dirección de un apropiado
ejecutada por la rutina DestAddress.
DestAddress
(campo-s) es el registro o literal 9-bit cuyo valor es la dirección de la
rutina temporalmente ejecutada.
Tabla Opcode:
–INSTR– ZCRI –CON–
–DEST–
010111 001i 1111 ddddddddd sssssssss
Tabla de verdad:
Destino
1
$----_----; -
El registro destino (9 bits bajos) se sobrescriben con la dirección de regreso (PC+1) en tiempo de ejecución.
1
La bandera C se active (1) a menos que PC+1 es igual a 0; muy diferente ya que requiere que JMPRET se ejecute desde la parte alta
2
de la RAM del cog ($1FF; registro de propósito especial VSCL).
Explicación
JMPRET
(jump and return) proporciona un mecanismo de "llamar" a otras rutinas y
eventualmente regresar a la instrucción que seguía al
subrutinas use la instrucción
procesadores. La instrucción
"llamado" para ejecutar múltiples subrutinas en forma de intercambio de tareas.
El hardware Propeller no usa una llamada a pila, así la dirección de regreso debe almacenarse
d forma diferente. En tiempo de ejecución la instrucción
siguiente instrucción(PC+1) en la fuente (campo-s) del registro en RetInstAddr, luego salta a
DestAddress.
Si el registro RetInstAddr contiene una instrucción
la rutina DestAddressi, el comportamiento es similar a la instrucción
Pagina 308 · Manual Propeller v1.1
DestAddress
–SRC–
Entrada
Fuente
$----_----; -
CALL
ya que la función es similar a su similar en otros
JMPRET
proporciona potencia adicional mas allá del simple
Resultado Z
Resultado C
Result = 0
---
Z C Efectos
wz wc
- -
31:9 unchanged, 8:0 = PC+1 0
JMPRET
. Para llamadas normales a
JMPRET
almacena la dirección de la
RET
JMP
o
y se ejecuta eventualmente por
RET
JMP
o instrucción
Resultado
Ciclos
Written
4
Salida
Destino
Z C
1
2
1
CALL
; la dirección de