Operations:

Syntax:

Operation:

Operands:

Program Counter:

Opcode

Comment

Stack

SBIC A,b

If I/O(A,b) == 0 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

10011001AAAAAbbb

Description

This instruction tests a single bit in an I/O Register and skips the next instruction if the bit is cleared. 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:

wait:
      sbic  0x1C,1    ; Skip next instruction if 0x1C bit 1 is cleared
      rjmp  wait      ; Bit not cleared yet
      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.