EasyManua.ls Logo

Atmel AVR

Atmel AVR
191 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
49. CP – Compare
49.1. Description
This instruction performs a compare between two registers Rd and Rr. None of the registers are changed.
All conditional branches can be used after this instruction.
Operation:
(i) Rd - Rr
Syntax: Operands: Program Counter:
(i) CP Rd,Rr 0 ≤ d ≤ 31, 0 ≤ r ≤ 31 PC ← PC + 1
16-bit Opcode:
0001 01rd dddd rrrr
49.2. Status Register (SREG) and Boolean Formula
I T H S V N Z C
H Rd3 • Rr3 + Rr3 • R3 + R3 • Rd3
Set if there was a borrow from bit 3; cleared otherwise.
S N V, for signed tests.
V Rd7 • Rr7 • R7 + Rd7 • Rr7 • R7
Set if two’s complement overflow resulted from the operation; cleared otherwise.
N R7
Set if MSB of the result is set; cleared otherwise.
Z R7 • R6 • R5 • R4 • R3 • R2 • R1 • R0
Set if the result is $00; cleared otherwise.
C Rd7 • Rr7 + Rr7 • R7 + R7 • Rd7
Set if the absolute value of the contents of Rr is larger than the absolute value of Rd; cleared
otherwise.
R (Result) after the operation.
Example:
cp r4,r19 ; Compare r4 with r19
brne noteq ; Branch if r4 <> r19
...
noteq: nop ; Branch destination (do nothing)
Atmel AVR Instruction Set Manual [OTHER]
Atmel-0856L-AVR-Instruction-Set-Manual_Other-11/2016
77

Table of Contents

Related product manuals