Operations:

Syntax:

Operation:

Operands:

Program Counter:

Opcode

Comment

Stack

BRGE k

If Rd >= Rr (S == 0) then PC = PC + k + 1, else PC = PC + 1

-64 <= k <= +63

PC = PC + k + 1

PC = PC + 1, if the condition is false

111101kkkkkkk100

Description

Conditional relative branch. Tests the Sign (S) flag and branches relatively to the PC if S is cleared. If the instruction is executed immediately after any of the instructions CP, CPI, SUB, or SUBI, the branch will occur only if the signed binary number represented in Rd was greater than or equal to the signed binary number represented in Rr. This instruction branches relatively to the PC in either direction (PC - 63 <= destination <= PC + 64). Parameter k is the offset from the PC and is represented in two's complement form. (Equivalent to instruction BRBC 4,k.)

Status Register (SREG) and Boolean Formula

I

T

H

S

V

N

Z

C

Example:

          cp    r11,r12  ; Compare registers r11 and r12
          brge  greateq  ; Branch if r11 ≥ r12 (signed)
          ...
greateq:  nop            ; Branch destination (do nothing)

Words

1 (2 bytes)

Table Cycles

Name

Cycles

i

ii

AVRe

1

2

AVRxm

1

2

AVRxt

1

2

AVRrc

1

2

i) If the condition is false.

ii) If the condition is true.