Instrucción: BRBS |
Función: | Desvío si el flag de estado está a set |
Sintaxis: | BRBS s, k |
Código de Operación de 16 bit |
1111 |
00kk | kkkk | ksss |
Operación: | Si SREG(s) = 1 entonces PC Ü PC + k + 1, sino |
PC Ü PC + 1 | |
Operandos: | 0 £ s £ 7, -64 £ k £ +63 |
Words: | 1 (2 bytes) |
Ciclos: | 1 si la condición es falsa |
2 si la condición es verdadera | |
Flags: | Ninguno |
Program Counter: | PC Ü PC + k + 1 |
PC Ü PC + 1, si la condición es falsa |
Descripción: BRBS realiza un desvío condicional relativo. Hace un test de un bit en SREG y realiza un desvío relativo en PC si el bit está a set. Esta instrucción desvía relativamente a PC (Program Counter) en cualquier dirección (PC - 63 £ destino £ PC + 64). El parámetro k es el offset de PC y es representado en forma de complemento a dos. |
|
Ejemplo: |
|
BST r0,3 | ; Carga el bit T con el bit 3 de r0 |
BRBS 6,bitset |
; Desvío si el bit T estaba a set |
... |
|
bitset: NOP | ; Destino de desvío (No hacer nada) |