1 Instruction Set Nomenclature

Status Register (SREG)

SREG
Status Register
C
Carry Flag
Z
Zero Flag
N
Negative Flag
V
Two’s Complement Overflow Flag
S
Sign Flag
H
Half Carry Flag
T
Transfer Bit
I
Global Interrupt Enable Bit

Registers and Operands

Rd:
Destination (and source) register in the Register File
Rr:
Source register in the Register File
R:
Result after instruction is executed
K:
Constant data
k:
Constant address
b:
Bit position (0..7) in the Register File or I/O Register
s:
Bit position (0..7)in the Status Register
X,Y,Z:
Indirect Address Register (X=R27:R26, Y=R29:R28, and Z=R31:R30 or X=RAMPX:R27:R26, Y=RAMPY:R29:R28, and Z=RAMPZ:R31:R30 if the memory is larger than 64 KB)
A:
I/O memory address
q:
Displacement for direct addressing
UU
Unsigned × Unsigned operands
SS
Signed × Signed operands
SU
Signed × Unsigned operands

Memory Space Identifiers

DS( )
Represents a pointer to address in data space
PS( )
Represents a pointer to address in program space
I/O(A)
I/O space address A
I/O(A,b)
Bit position b of the byte in I/O space address A
Rd(n)
Bit n in register Rd

Operator

×
Arithmetic multiplication
+
Arithmetic addition
-
Arithmetic subtraction
Logical AND
Logical OR
Logical XOR
>>
Shift right
<<
Shift left
==
Comparison
Assignment
Swap
x
Logical complement of x (NOT x)

Stack

STACK
Stack for return address and pushed registers
SP
The Stack Pointer

Flags

Flag affected by instruction
0
Flag cleared by instruction
1
Flag set by instruction
-
Flag not affected by instruction