EasyManuals Logo

Atmel AVR User Manual

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
Page #181 background imageLoading...
Page #181 background image
123. SUB – Subtract Without Carry
123.1. Description
Subtracts two registers and places the result in the destination register Rd.
Operation:
(i) Rd ← Rd - Rr
Syntax: Operands: Program Counter:
(i) SUB Rd,Rr 0 ≤ d ≤ 31, 0 ≤ r ≤ 31 PC ← PC + 1
16-bit Opcode:
0001 10rd dddd rrrr
123.2. Status Register 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) equals Rd after the operation.
Example:
sub r13,r12 ; Subtract r12 from r13
brne noteq ; Branch if r12<>r13
...
noteq: nop ; Branch destination (do nothing)
Atmel AVR Instruction Set Manual [OTHER]
Atmel-0856L-AVR-Instruction-Set-Manual_Other-11/2016
181

Table of Contents

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Atmel AVR and is the answer not in the manual?

Atmel AVR Specifications

General IconGeneral
Architecture8-bit RISC
SRAMUp to 16 KB
Clock SpeedUp to 20 MHz
Operating Voltage1.8V to 5.5V
ADC10-bit ADC
Communication InterfacesSPI, I2C, USB
PackagesDIP, SOIC, QFN
Special FeaturesWatchdog Timer
Flash Memory1KB to 256KB
EEPROM64B to 4KB

Related product manuals