Operations:

Syntax:

Operation:

Operands:

Program Counter:

Opcode

Comment

Stack

SBIS A,b

If I/O(A,b) == 1 then PC = PC + 2 (or 3) else PC = PC + 1

0 <= A <= 31, 0 <= b <= 7

PC = PC + 1, Condition false - no skip

PC = PC + 2, Skip a one word instruction

PC = PC + 3, Skip a two word instruction

10011011AAAAAbbb

Description

This instruction tests a single bit in an I/O Register and skips the next instruction if the bit is set. This instruction operates on the lower 32 I/O Registers - addresses 0-31.

Status Register (SREG) and Boolean Formula

I

T

H

S

V

N

Z

C

Example:

waitset: 
      sbis  0x10,0   ; Skip next instruction if bit 0 at 0x10 is set
      rjmp  waitset  ; Bit not set
      nop            ; Continue (do nothing)

Words

1 (2 bytes)

Table Cycles

Name

Cycles

i

ii

iii

AVRe

1

2

3

AVRxm

2

3

4

AVRxt

1

2

3

AVRrc

1

2

N/A

i) If the condition is false (no skip).

ii) If the condition is true (skip is executed) and the instruction skipped is one word.

iii) If the condition is true (skip is executed) and the instruction skipped is two words.