| Theme | What is that | Instructions |
| Hardware |
ISP-Interface,
Parallel-Port-Programmer,
Experimental 2313 board,
Commercial boards | - |
| Why |
Why learn assembler language?,
The concept behind assembler,
Planning an AVR project |
- |
| Tools |
Editor,
Assembler,
ISP,
Studio3,
Studio4,
Structure | - |
| Register |
What is a Register? |
.DEF,
LDI,
MOV |
| Which different registers are available |
CLR,
ANDI,
CBR,
CPI,
SBCI,
SBR,
SER,
SUBI |
| Register as Pointer |
LD, ST,
LPM,
ADIW, SBIW,
.DB, .DW |
| What can be packed into a register? |
- |
| Ports |
What is a Port? |
.INCLUDE,
OUT,
IN,
CBI, SBI,
SLEEP |
| Which Ports are available? | - |
| Status register as most relevant port |
CLx, SEx, BCLR, BSET |
| SRAM |
What is SRAM? | - |
| For which purposes SRAM is used | - |
| How to use SRAM? |
STS, LDS,
LD, ST,
STD, LDD |
| Stack in SRAM |
PUSH, POP,
RCALL, RET |
| Program run |
What happens during a Reset? | - |
| Linear program runs and branches |
.CSEG, .DSEG, .ORG,
.ESEG,
INC,
BRNE,
BREQ,
BRxx |
| Timing of commands |
NOP,
DEC |
| Macros |
.MACRO, .ENDMACRO |
| Subroutines |
RET,
RCALL,
RJMP,
SBRC, SBRS,
SBIC, SBIS |
| Interrupts |
RETI |
| Calculations |
Numbers and characters | - |
| Bit manipulation |
ORI,
OR,
ANDI,
AND,
CBR, SBR,
EOR,
COM, NEG,
BLD,
CLT, SET, BST |
| Shift and rotate |
LSL,
LSR,
ASR,
ROL,
ROR,
SWAP |
| Adding, Subtracting, Compares |
ADD, ADC,
SUB, SBC,
CP, CPC,
CPI,
TST |
| Format changes |
.DB,
.DW |
| Tables |
Commands by function | - |
| Commands alphabetic | - |
| Ports | - |
| Vectors | - |
| Abbreviations | - |
| Directives | all dot directives |
| Expressions | - |