Instrucción: SBRS |
|
| Función: | Salto si el bit del registro esta a set |
| Sintaxis: | SBRS Rr, b |
![]()
Código de Operación de 16 bit |
1111 |
111r | rrrr | 0bbb |
| Operación: | Si Rr(b) = 1 entonces PC Ü PC + 2(o 3) sino PC Ü PC + 1 |
| Operandos: | 0 £ r £ 31, 0 £ b £ 7 |
| Words: | 1 (2 bytes) |
| Ciclos: | 1 si la condición es falsa (no salto) |
2 si la condición es verdadera (el salto es ejecutado) y la instrucción de salto es de 1 word |
|
3 si la condición es verdadera (el salto es ejecutado) y la instrucción de salto es de 2 word |
|
| Flags: | Ninguno |
| Program Counter: | PC Ü PC + 1, Condicion falsa - no saltar |
| PC Ü PC + 2, Saltar una instrucción de 1 word | |
| PC Ü PC + 3, Saltar una instrucción de 2 word |
Descripción: SBRS realiza un test de un simple bit en un registro y salta la siguiente instrucción si el bit está a set. |
|
Ejemplo: |
|
| SUB r0,r1 | ; Restar r1 de r0 |
SBRS r0,7 |
; Saltar si el bit 7 en r0 está a set |
NEG r0 |
; Sólo ejecutar si el bit 7 en r0 no está a set |
| NOP | ; Continuar (No hacer nada) |