<html lang="en"> <head> <title>AVR-Regs - Using as</title> <meta http-equiv="Content-Type" content="text/html"> <meta name="description" content="Using as"> <meta name="generator" content="makeinfo 4.7"> <link title="Top" rel="start" href="index.html#Top"> <link rel="up" href="AVR-Syntax.html#AVR-Syntax" title="AVR Syntax"> <link rel="prev" href="AVR_002dChars.html#AVR_002dChars" title="AVR-Chars"> <link rel="next" href="AVR_002dModifiers.html#AVR_002dModifiers" title="AVR-Modifiers"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- This file documents the GNU Assembler "as". Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2006, 2007 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''. man end--> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"><!-- pre.display { font-family:inherit } pre.format { font-family:inherit } pre.smalldisplay { font-family:inherit; font-size:smaller } pre.smallformat { font-family:inherit; font-size:smaller } pre.smallexample { font-size:smaller } pre.smalllisp { font-size:smaller } span.sc { font-variant:small-caps } span.roman { font-family: serif; font-weight: normal; } --></style> </head> <body> <div class="node"> <p> <a name="AVR_002dRegs"></a>Next: <a rel="next" accesskey="n" href="AVR_002dModifiers.html#AVR_002dModifiers">AVR-Modifiers</a>, Previous: <a rel="previous" accesskey="p" href="AVR_002dChars.html#AVR_002dChars">AVR-Chars</a>, Up: <a rel="up" accesskey="u" href="AVR-Syntax.html#AVR-Syntax">AVR Syntax</a> <hr><br> </div> <h5 class="subsubsection">9.4.2.2 Register Names</h5> <p><a name="index-AVR-register-names-652"></a><a name="index-register-names_002c-AVR-653"></a> The AVR has 32 x 8-bit general purpose working registers <span class="samp">r0</span>, <span class="samp">r1</span>, ... <span class="samp">r31</span>. Six of the 32 registers can be used as three 16-bit indirect address register pointers for Data Space addressing. One of the these address pointers can also be used as an address pointer for look up tables in Flash program memory. These added function registers are the 16-bit <span class="samp">X</span>, <span class="samp">Y</span> and <span class="samp">Z</span> - registers. <pre class="smallexample"> X = <span class="roman">r26:r27</span> Y = <span class="roman">r28:r29</span> Z = <span class="roman">r30:r31</span> </pre> </body></html>