Instrucción: PUSH |
|||||||||
|
|||||||||
|
|||||||||
|
|||||||||
Código de Operación de 16 bit |
|||||||||
1001 |
001d | dddd | 1111 | ||||||
| Operación: | STACK Ü Rr |
| Operandos: | 0 £ r £ 31 |
| Words: | 1 (2 bytes) |
| Ciclos: | 2 |
| Flags: | Ninguno |
| Pila: | SP Ü SP - 1 |
| Program Counter: | PC Ü PC + 1 |
Descripción: PUSH guarda el contenido del registro Rr en la pila. El puntero de pila es post-decrementado en uno después del PUSH. |
|
Ejemplo: |
|
| CALL routine | ; Llamar a subrutina |
... |
|
routine: PUSH r14 |
; Guardar r14 en la pila |
PUSH r13 |
; Guardar r13 en la pila |
... |
|
POP r13 |
; Restaurar r13 |
POP r14 |
; Restaurar r14 |
| RET | ; Retorno de subrutina |