Datasheet AT90S8515 (Atmel) - 10

ManufacturerAtmel
Description8-bit AVR Microcontroller with 8K Bytes In-System Programmable Flash
Pages / Page112 / 10 — General-purpose. Register File Figure 6 shows the structure of the 32 …
File Format / SizePDF / 2.7 Mb
Document LanguageEnglish

General-purpose. Register File Figure 6 shows the structure of the 32 general-purpose working registers in the CPU

General-purpose Register File Figure 6 shows the structure of the 32 general-purpose working registers in the CPU

Model Line for this Datasheet

Text Version of Document

General-purpose
Register File Figure 6 shows the structure of the 32 general-purpose working registers in the CPU.
Figure 6. AVR CPU General-purpose Working Registers
7 0 Addr. R0 $00 R1 $01 R2 $02 …
R13 $0D General R14 $0E Purpose R15 $0F Working R16 $10 Registers R17 $11 …
R26 $1A X-register low byte R27 $1B X-register high byte R28 $1C Y-register low byte R29 $1D Y-register high byte R30 $1E Z-register low byte R31 $1F Z-register high byte All the register operating instructions in the instruction set have direct and single-cycle
access to all registers. The only exception are the five constant arithmetic and logic
instructions SBCI, SUBI, CPI, ANDI and ORI between a constant and a register and the
LDI instruction for load immediate constant data. These instructions apply to the second
half of the registers in the register file (R16.R31). The general SBC, SUB, CP, AND and
OR and all other operations between two registers or on a single register apply to the
entire register file.
As shown in Figure 6, each register is also assigned a data memory address, mapping
them directly into the first 32 locations of the user Data Space. Although not being physically implemented as SRAM locations, this memory organization provides great
flexibility in access of the registers, as the X-, Y-and Z-registers can be set to index any
register in the file.
X-register, Y-register and
Z-register The registers R26.R31 have some added functions to their general-purpose usage.
These registers are address pointers for indirect addressing of the Data Space. The
three indirect address registers X, Y, and Z are defined as:
Figure 7. X-, Y-, and Z-registers
15
X -register 0 7 0 7 R27 ($1B) 0
R26 ($1A) 15
Y -register 0 7 0 7 R29 ($1D) 0
R28 ($1C) 15
Z -register 0 7 0
R31 ($1F) 10 7 0
R30 ($1E) AT90S8515
0841G–09/01