24. BRLO – Branch if Lower (Unsigned)
24.1. Description
Conditional relative branch. Tests the Carry Flag (C) and branches relatively to PC if C is set. If the
instruction is executed immediately after any of the instructions CP, CPI, SUB, or SUBI, the branch will
occur if and only if, the unsigned binary number represented in Rd was smaller than the unsigned binary
number represented in Rr. This instruction branches relatively to PC in either direction (PC - 63 ≤
destination ≤ PC + 64). Parameter k is the offset from PC and is represented in two’s complement form.
(Equivalent to instruction BRBS 0,k.)
Operation:
(i) If Rd < Rr (C = 1) then PC ← PC + k + 1, else PC ← PC + 1
Syntax: Operands: Program Counter:
(i) BRLO k -64 ≤ k ≤ +63 PC ← PC + k + 1
PC ← PC + 1, if condition is
false
16-bit Opcode:
1111 00kk kkkk k000
24.2. Status Register (SREG) and Boolean Formula
I T H S V N Z C
– – – – – – – –
Example:
eor r19,r19 ; Clear r19
loop: inc r19 ; Increase r19
...
cpi r19,$10 ; Compare r19 with $10
brlo loop ; Branch if r19 < $10 (unsigned)
nop ; Exit from loop (do nothing)
Words 1 (2 bytes)
Cycles 1 if condition is false
2 if condition is true
Atmel AVR Instruction Set Manual [OTHER]
Atmel-0856L-AVR-Instruction-Set-Manual_Other-11/2016
51